<<if setup.cheatsUnlocked()>>
<p>Help yourself!</p>
<h3>General</h3>
<<link "+ $200 money">><<set $money += 200>><<goto "Cheat">><</link>> (now: <<print "$" + $money>>)<br>
<<link "+ 50 physical">><<set $physical += 50>><<goto "Cheat">><</link>> (now: $physical)<br>
<<link "Refill energy">><<set $energy = 10>><<goto "Cheat">><</link>> (now: $energy)<br>
<<link "+ 50 respect">><<set $respect += 50>><<goto "Cheat">><</link>> (now: $respect)<br>
<<link "+ 25 knowledge">><<set $knowledge += 25>><<goto "Cheat">><</link>> (now: $knowledge)<br>
<<link "Clear heat">><<set $heat = 0>><<set $laying_low = 0>><<goto "Cheat">><</link>> (now: $heat)<br>
<h3>Characters</h3>
/* Character skips only move a save forward, and only to points that open
something outside the character's own scenes - a service, a quest gate,
another arc. Stepping through single beats is the Gallery's job, so there is
no link per scene. Each skip writes what the beats it jumps over would have
written and hides once the save is at or past it.
Ella: the rebuild skip leaves her at stage 4 with the building finished, so
her kiss and the grand opening still play in context. The catch-up skip
lands on 12, where the open relationship is agreed (William's arc, the
library meeting spot for Jamal, her recording in room 021) and her next
visit waits on other arcs. It needs $target1 4: the Mrs. Bond aftermath
drops any stage 6+ back to 7. The runaway route (-1) is her ending, so
nothing is offered there. */
<<switch $ella_stage>>
<<case -1>><<set _beat = "on the runaway route - that's her ending">>
<<case 0>><<set _beat = "not met yet">>
<<case 1 2 3>><<set _beat = "the library rebuild is under way">>
<<case 4>><<set _beat = "the renovation's last push, her kiss next">>
<<case 5>><<set _beat = "grand opening next">>
<<case 6 7 8 9 10>><<set _beat = "between the opening night and deciding what you are to each other">>
<<case 11>><<set _beat = "open relationship agreed, her creampie talk next (20 knowledge)">>
<<case 12>><<if $william_stage == 6 && $pollock_stage >= 4>><<set _beat = "her flat visit is open - check on her from the library or the bar">><<else>><<set _beat = "caught up - her flat visit waits on William's night and Pollock's finale">><</if>>
<<default>><<set _beat = "her flat visit done - end of her content">>
<</switch>>
<p>Ella is at stage $ella_stage: <<print _beat>>. The library is <<if $community_quest >= 4>>open<<else>>at $library_progress%<</if>>. Skips only move forward; replay her scenes from the Gallery.</p>
<<if $community_quest < 4 && $ella_stage >= 0 && ($library_progress < 100 || $library_standoff < 2 || $ella_stage < 4)>><<link "Library: finish the rebuild (Ella's kiss and the grand opening next)">><<set $community_quest = 3>><<set $library_progress = 100>><<set $library_materials = 1>><<set $library_find = 4>><<set $library_standoff = 2>><<set $ella_stage = Math.max($ella_stage, 4)>><<set $ella_next_day = $day>><<goto "Cheat">><</link>><br><</if>>
<<if $backroom_unlocked == 0 && $ella_stage >= 0>><<link "Library: build the back room behind the poetry shelf">><<set $backroom_unlocked = 1>><<goto "Cheat">><</link>> (+5 knowledge per read<<if $community_quest < 4>>, opens once the library reopens<</if>>)<br><</if>>
<<if $ella_stage >= 0 && $ella_stage < 12>>
<<if $target1 >= 4>>
<<link "Ella: catch up to her latest content (library open, open relationship, creampie talk done)">><<set $community_quest = 4>><<set $library_progress = 100>><<set $library_materials = 1>><<set $library_find = 4>><<set $library_standoff = 2>><<set $ella_stage = 12>><<set $ella_next_day = $day>><<goto "Cheat">><</link>><br>
<<else>>
<div class="req">Ella: catching her up needs the Mrs. Bond operation done first - its aftermath sends her back to the bar. The school unlock below covers it.</div>
<</if>>
<</if>>
/* Adriana: the repair link, one catch-up skip and the daily reset. Level 8 is
the only skip worth having - it holds every service her ladder opens (heat
scrub at girlfriend prices, the fake ID the school job needs, room 021's
materials) plus what only exists while the night is owed: her cart, the
confiscation tub, Earl's tap line, Vittoria's reroute and the princess-night
offer to Madi. Skipping onto her earlier rungs or straight to a stocked
night only replayed scenes the Gallery already has, so those links are gone.
"|| 0" keeps a missing or NaN counter out of Math.max.
She counts as met at level 1, or once the main quest is past her laptop
handoff ($target1 3+), which is where level 1 is normally set. The school
skip below jumps past that point and marks her met itself; a save that used
it before it did sits at level 0 and gets the "count her as met" link. */
<<if $hacker_level < 1 && $target1 < 3>>
<p>Adriana: meet her through the main quest first.</p>
<<else>>
<<switch $hacker_level>>
<<case 0>><<set _beat = "never met on this save, the main quest was skipped past her">>
<<case 1>><<set _beat = "first blowjob next">>
<<case 2>><<set _beat = "blowjob practice, " + ($hacker_bj_level || 0) + "/3">>
<<case 3>><<set _beat = "first facefuck next">>
<<case 4>><<set _beat = "facefuck practice, " + ($hacker_ff_level || 0) + "/3">>
<<case 5>><<set _beat = "gloryhole talk next">>
<<case 6>><<set _beat = "her first time at the lair next">>
<<case 7>><<set _beat = "pussy rounds until her princess list, " + ($hacker_sex_level || 0) + "/3">>
<<case 8>><<set _beat = "princess list handed over, shopping for the night">>
<<default>><<set _beat = "princess night done - end of her content">>
<</switch>>
<p>Adriana is at level $hacker_level/9: <<print _beat>>. Skips only move forward; replay her scenes from the Gallery.</p>
<<if $hacker_level < 1>><<link "Adriana: count her as met (first blowjob next)">><<set $hacker_level = 1>><<goto "Cheat">><</link>><br><</if>>
<<if $hacker_level < 8>><<link "Adriana: catch up to her princess list (fake ID, room 021 materials, cheaper heat scrubs)">><<set $hacker_level = 8>><<set $hacker_bj_level = Math.max($hacker_bj_level || 0, 3)>><<set $hacker_ff_level = Math.max($hacker_ff_level || 0, 3)>><<set $hacker_gh_stage = Math.max($hacker_gh_stage || 0, 2)>><<set $hacker_sex_level = Math.max($hacker_sex_level || 0, 3)>><<goto "Cheat">><</link>> (the night itself needs her dress and lube from the cart)<br><</if>>
<<link "Adriana: reset her scenes for today">><<set $hacked_had_sex_today = 0>><<goto "Cheat">><</link>> (now: $hacked_had_sex_today/2 used)<br>
<</if>>
<<link "Savannah: max both corruption paths">><<set $savannah_blacked = Math.max($savannah_blacked, 7)>><<set $savannah_cheating = Math.max($savannah_cheating, 7)>><<goto "Cheat">><</link>> (now: <<print Math.min($savannah_blacked, 7)>>/7 interracial, <<print Math.min($savannah_cheating, 7)>>/7 affairs)<br>
<h3>School</h3>
<<link "Unlock school access (skip the main quest up to the janitor job)">><<set $target1 = 4>><<set $school_unlocked = 4>><<set $school_job = 1>><<set $closet_unlocked = true>><<set $school_time = "morning">><<set $school_pay_day = $day>><<set $hacker_level = Math.max($hacker_level, 1)>><<if $player_name == "">><<set $player_name = "Tyron">><</if>><<if $player_surame == "">><<set $player_surame = "Williams">><</if>><<goto "Cheat">><</link>> (now: $school_unlocked/4)<br>
<<link "Grant the detention post (skips Britney's arc requirement)">><<set $detention_job = true>><<set $school_job = 2>><<set $amber_stage = Math.max($amber_stage, 4)>><<goto "Cheat">><</link>> (now: <<if $detention_job>>held<<else>>not held<</if>>)<br>
<<link "+ 25 school reputation">><<set $school_rep += 25>><<goto "Cheat">><</link>> (now: $school_rep)<br>
<<link "Pollock: max leverage">><<set $pollock_leverage = 10>><<goto "Cheat">><</link>> (now: $pollock_leverage/10)<br>
<<link "Master key: complete">><<set $master_key = 3>><<goto "Cheat">><</link>> (now: $master_key/3)<br>
<h3>Gallery</h3>
<<if $gallery_cheat>><<link "Unlock every gallery scene: ON - switch off">><<set $gallery_cheat = false>><<goto "Cheat">><</link>><br>
<<else>><<link "Unlock every gallery scene: OFF - switch on">><<set $gallery_cheat = true>><<goto "Cheat">><</link>><br>
<</if>>
<br>
<<else>>
Enter the code here: <<textbox "$code" "" "PatreonCode" autofocus>>
[[Confirm|PatreonCode]]<br>
<br>
Enter the code to unlock the cheat menu. You can find the current code on my patreon page: https://patreon.com/TimJRebel <br>
<</if>>
[[Return to the game|The hideout]]Chemist who can synthesise drugs for sale or help advance on target.
Either for money or Heat/Manpower (steal chemicals from facility)<div class="text" style="font-size: 1.5em; font-weight: bold;">Democracy is Dead, and now you too?</div>
<div class="text">Your physical stat has dropped below zero, meaning you should not wake up the following day.
However, at least at this stage, you get a second chance. Please pay more attention to your physical stat: eat more, hit the gym, touch the grass.</div>
<<statchange "physical" 20>>
[[Try better|Sleep]]<<if visited() == 1>>
<p>Another habit from your service that is hard to shake off is to note every door in every room you're in. And since you've started visiting this bar, you kept thinking about the purpose of one unremarkable door behind the bartender. Occasionally, suspicious men were seen coming in and out; could it be a gang hideout there? You decide to ask the bartender.</p>
<<speech "Earl" "Gloryhole, kid. Want your dick sucked? Throw me a fiver and keep your mouth shut.">>
<div class="text">Oh, that explains a lot. Not that you really want to put your genitalia in a hole in the wall, but you need to inspect the building - to spot possible escape routes, etc.
You find yourself in a small room, more like a closet or a booth, with a screen that shows you the feed from the other side of the wall. There, a well-groomed brunette is waiting for a dick to appear. She does not look like someone who sucks cocks for a couple of bucks, but who are you to judge. Anyway, let's not keep the lady waiting...</div>
<<video "img/bar/first_1.webm" >>
<p>You push your big black cock through the hole in the wall and steer it into the lady's mouth. The poor girl is flabbergasted! She did not expect to be choked by a black monster tonight, it seems.</p>
<<video "img/bar/first_2.webm" >>
<p>Nevertheless, she quickly gets her shit together and starts intensively sucking your cock. She's really good, definitely not a novice at the gloryhole duty.</p>
<<video "img/bar/first_3.webm" >>
<div class="text">Your expectations are surpassed when the lady switches from her mouth to her pussy. Now THAT we're talking! Her tight pussy is so good you just close your eyes and unload your cum inside the stranger behind the wall...
***
On your way back, the bartender returns you the money.</div>
<<speech "Earl" "It's free for you, kid. With your natural gifts, the girls should pay you.">>
<<set $gloryhole_ulocked to 1>>
<<else>>
You put your impressive manhood through the wall and relax. For the next short time, you are going to be pleased by anonymous white girls with BBC fetish - a good way to unwind after a long day.
<<set _randomvid = either("img/bar/glory_1.webm","img/bar/glory_2.webm","img/bar/glory_3.webm","img/bar/glory_4.webm","img/bar/glory_5.webm",)>> <<video _randomvid >>
<<statchange "energy" -2>>
<<statchange "physical" 1>>
<</if>>
<<return>><<pic "img/gym/gym.jpg" "location">>
<<if visited() == 1>>
<p>You used to exercise regularly during your service and decided to look for a place to lift some weights to get into your routine. You end up in a basement gym that feels like a relic from another era. Rusted weight machines creak ominously with every rep, their padded seats cracked and leaking stuffing. Free weights, mismatched and coated in a thin layer of grime, sit piled in haphazard stacks along the walls. The stale air is thick, tinged with the sharp tang of metal and the sour musk of bodies long gone. A single flickering fluorescent light casts an uneven glow, throwing jagged shadows across faded posters of muscle-bound heroes from decades past. It's a far cry from the polished facilities you once knew, but it's enough.</p><<else>>
<p>The basement gym smells of mildew and stale air. Old, cracked free weights are piled haphazardly, their surfaces coated in grime. A flickering fluorescent light casts uneven shadows, illuminating faded posters of muscle-bound icons from a forgotten era.</p><</if>>
<<nobr>>
<<set _exlabel = $gym_assist == 0 ? "Exercise ($5)" : "Exercise">>
<<linkreplace _exlabel>>
<<if $energy < 3>>You don't have enough energy to workout! Get some rest first.
<<elseif $gym_assist == 0 && $money < 5>><div class="req">Five bucks at the door. The owner doesn't run a charity, and today you don't have it.</div>
<<else>>
<<album "img/gym/training_" 5 "webp">>
<<print either("Feels good!", "Lightweight, baby!", "Great workout today.", "Could be better.", "You feel alive again.")>>
<<statchange "energy" -3>>
<<if $gym_assist == 0>>
<<statchange "money" -5>>
<</if>>
<<if $physical >= 100>>
<p>Your body is as hard as this neighborhood lets it get. The workout keeps the edge, nothing more.</p>
<<else>>
<<statchange "physical" 3>>
<</if>>
<</if>><</linkreplace>><br>
<<if $gym_assist == 0 && $physical >=50>>
<<linkreplace "Gym owner wants to talk with you">>
<p>The gym owner, a grizzled man with a thick mustache and hands like gnarled tree roots, leans against the counter, eyeing you up and down.</p>
<<speech "Gym owner" "You've got the look of someone who knows their way around a weight rack." "default_male">>
<<speech "Gym owner" "Train here for free - on one condition. You help out with the rookies now and then." "default_male">>
<p>You shake hands, and the old man's grip still almost crushes you.</p>
<<set $gym_assist to 1>>
<</linkreplace>><br>
<<elseif $gym_assist == 0>><div class="req">The old gym owner needs someone to help with coaching rookies - you gotta lift harder to make him consider you. This job pays respect and provides free gym access. (50 physical, you have $physical.)</div><</if>>
<<if $gym_assist == 1>>
<<if $day > $gym_rookies_day>>
<<linkreplace "Train rookies">>
<<if $energy >= 2>>
<<set $gym_rookies_day = $day>>
<div class="text"><<set _event=random(1,5)>><<switch _event>>
<<case 1>>You guide a scrawny teenager through his first set of bench presses, your firm encouragement keeping him steady as the bar wobbles in his grip.
<<case 2>>A middle-aged man struggles through push-ups, and you drop down beside him, counting each rep aloud until he finds his rhythm.
<<case 3>>You adjust the stance of a woman at the squat rack, her determined nod showing she's ready to push past her limits.
<<case 4>>A young boxer shadowboxes awkwardly in the corner, and you step in, showing him how to throw a proper jab with power and precision.
<<case 5>>You spot a beginner struggling with a deadlift and step over to correct their form before they hurt themselves.
<</switch>></div>
<<if $physical < 100>><<statchange "physical" 1>><</if>>
<<statchange "energy" -2>>
<<statchange "respect" 5>>
<<else>>You don't have enough energy for that.<</if>>
<</linkreplace>><br>
<<else>>
<div class="req">The rookies got their coaching for today. Tomorrow brings a fresh batch of shaky elbows.</div>
<</if>><</if>>
[[Return|The Hood]]
<</nobr>><<pic "img/general/laptop.jpg" "location">><br>
<p>You plug in a USB drive with your encryption key and boot up the system. Not much fun to do here...</p><br>
<<if $nextday == 0 && $target1 == 4 && $school_unlocked == 0>>
<<linkreplace "You receive a message from Jamal">>
<<speech "Jamal" "Morning, soldier! I'm out here hunting new targets. Bond was low-hanging fruit - the next ones all sit higher up the tree. But I might have a plan. Either way, you gon' need a fake ID - Adriana can hook you up. Drop me a line here when you got it.">><<set $school_unlocked = 1>>
<</linkreplace>><br>
<</if>>
<<if $school_unlocked == 2>><<linkreplace "Text Jamal">>
<p>You drop a message to Jamal informing him that you got the fake ID.</p><br>
<<speech "Jamal" "Good work. You got somewhere safe we can meet?">><br>
<<set _choiceMade = false>> <!-- Flag to track if a choice is made -->
<div id="choice-container">
<<if not _choiceMade>>
<<linkreplace "Bar is as good a place as any">>
<<set _choiceMade = true>>
<<set $school_intro_location = "bar">>
<<set $school_unlocked = 3>>
<<replace "#output">><<speech "Jamal" "Roger that, soldier. Meet me there.">><br>
<</replace>>
<<replace "#choice-container">><</replace>>
<</linkreplace>><br>
<<if $ella_stage>=11>> <<linkreplace "The community library is the safest option">>
<<set _choiceMade = true>>
<<set $school_intro_location = "library">>
<<set $school_unlocked = 3>>
<<replace "#output">><<speech "Jamal" "Roger that, soldier. Meet me there.">><br><</replace>>
<<replace "#choice-container">><</replace>> <!-- Hides both choices -->
<</linkreplace>><<else>><div class="req">If you decide on your future with Ella, you can meet in the library.</div><br><</if>>
<</if>>
</div>
<div id="output"></div>
<</linkreplace>><br>
<</if>>
<<if $ella_mmf_stage == 2>><<if $nextday == 0>>[[Text Jamal about threesome with Ella|EllaJamalThreesome_1]]<br><<else>><div class="req">Wait until tomorrow to text Jamal about Ella.</div><br><</if>><</if>>
<<if $target1 == 3>>[[Corrupt Mrs. Bond|Target1Laptop]]<br><</if>>
<<if $database_access == 1>><div class="req">Pollock's card and security key are in your pocket, unused. Jamal gets a name, not a guess - get the database read at the school first.</div><br>
<<elseif $database_access == 2>>[[Report Pollock's access and the name to Jamal|Jamal Access Report]]<br><</if>>
[[Close the laptop|The hideout]]Support me on <a href="https://patreon.com/TimJRebel" target="_blank">[Patreon]</a> or <a href="https://subscribestar.adult/timjrebel" target="_blank">[SubscribeStar]</a>
Visit my website to check out my other games <a href="https://timjrebel.neocities.org/" target="_blank">[TimJRebel]</a>
Leave a review and subscribe to F95zone <a href="https://f95zone.to/threads/justice-is-black-v0-1-timjrebel.241575/" target="_blank">[thread]</a>
<<return>><<pic "img/general/job_search.png" "location">>
<div class="text"><<if visited() == 1>>You need money - something that wasn't a problem for you during all your military years. You ask around and end up on the outskirts near the highway exit, where a line of weary men desperate for jobs wait for an occasional pickup truck looking for some workers. In the current economy, this is your best chance at making some buck.
<<else>>No matter when you come here, there is always someone waiting for the opportunity to exchange hard manual labour for some cash.<</if>></div>
<<nobr>>
/* The day's board is rolled once and remembered ($jobs_day), so leaving and
coming back can't be used to reroll which trucks showed up. */
<<if $jobs_day != $day>>
<<set $jobs_day = $day>>
/* Regulars (rep 5+) get picked off the line first - the foreman knows your face */
<<if $construction_rep >= 5>><<set _constructionOdds = 80>><<else>><<set _constructionOdds = 60>><</if>>
<<if random(1, 100) <= _constructionOdds>><<set $construction_open = 1>><<else>><<set $construction_open = 0>><</if>>
<<if random(1, 100) <= 60>><<set $warehouse_open = 1>><<else>><<set $warehouse_open = 0>><</if>>
<</if>>
<<set _constructionAvailable = $construction_open == 1 && $day >= $construction_banned>>
<<set _warehouseAvailable = $warehouse_open == 1 && $day >= $warehouse_banned>>
<<if $day < $construction_banned>>The construction trucks slow down, see your face, and keep rolling. The client's word travels faster than you do.<br><</if>>
<<if $day < $warehouse_banned>>The warehouse van doesn't stop for you - your badge photo is taped inside their windshield now.<br><</if>>
<<if $energy < 5>>
<div class="req">You don't have enough energy to work! Get some rest first.</div>
<<elseif _constructionAvailable or _warehouseAvailable>>
Choose your job:<br>
<<if _constructionAvailable>>
Nearby construction site needs some extra hands today.<<if $construction_rep >= 5>> The foreman points at you before the truck even stops.<</if>><br>
[[Go work on construction site|Construction work]]<br>
<</if>>
<<if _warehouseAvailable>>
Marketplace warehouse looks for cheap labour.<br>
[[Go work in warehouse|Warehouse work]]<br>
<</if>>
<<else>>
<div class="req">No opportunity appeared today. The trucks came and went without stopping, and the line thins out around you.</div>
<</if>>
<br>
[[Go back|The Hood]]
<</nobr>><<if setup.checkCheatCode($code)>>
<<run setup.unlockCheats()>>
<<set $code = "">>
<p>The cheat menu is unlocked.</p>
[[Open the cheat menu|Cheat]]<br>
<<else>>
Wrong code. Try [[again|Cheat]]?<br>
<</if>>
[[Return to the game|The hideout]]Manage your operations
Your second in command, helping you with managing the org
Regular ops:
Heist (money+, heat+)
Assault?
After accepting crime jobs:
Manage prostitutes
Drugs
Unique ops:
Main missions for NTRing the spokesmen of the state<<if $school_intro_location == "bar">>
<p>You find Jamal in a corner booth, back to the wall. He seems a bit anxious.</p>
<<speech "Jamal" "Meeting where you drink is lazy tradecraft. Once, fine. But I don't care how safe this place feel - next time, you better have alternatives.">>
<<elseif $school_intro_location == "library" && $ella_mmf_stage >=0>>
<<speech "Jamal" "Nigga, you one lucky bastard - what a smoking-hot babe you got here!" "jamal_happy">>
<<set _choiceMade = false>><div id="choice-container"><<if not _choiceMade>>
<<linkreplace "Encourage">><<set _choiceMade = true>>
<<replace "#output">><<speech "You" "Haha, have you got a chance to check out her ass?">>
Mental image appears in your mind when you speak about Ella:
<<pic "img/ella/jamal/encourage.jpg">>
<<speech "Jamal" "Oh yeah, bro. Pretty good for a white girl.">>
<<speech "You" "That's what I said!">>
<<set $ella_mmf_stage = 1>>
<</replace>> <<replace "#choice-container">><</replace>> <</linkreplace>><br>
<<linkreplace "Discourage">> <<set _choiceMade = true>>
<<replace "#output">><<speech "You" "Don't talk about her like that, OK?">>
<<speech "Jamal" "Aight, brother. Say no more.">>
<</replace>>
<<replace "#choice-container">><</replace>><</linkreplace>><</if>>
</div><div id="output"></div><</if>>
<<speech "Jamal" "Anyway...">>
<p>First, you show Jamal your new ID.</p>
<<speech "Jamal" "Well hello, Mr. $player_surame! I got a job just for an unfortunate motherfucker like you. How you feel about working with kids?">>
<<speech "You" "WHAT the fuck?">>
<<speech "Jamal" "Not literal kids, man - rich kids. Grown-ass brats. Eighteen-plus high schoolers from money.">>
<<speech "You" "Daughters again.">>
<<speech "Jamal" "Daughters again. That's the play that put us in business, brother - one daughter, one bedroom, and Renner was done by breakfast. A wife wounds a man. His little girl finish him.">>
<<speech "You""Can't say I'm surprised. So you what, you want me to become a teacher of some sort and seduce my student?">>
<<speech "Jamal" "Bro, why not go for principal while you at it? You forgot what world you living in? You think rich WASPs gon' let a black man tutor their kids?">>
<<speech "You" "Not even PE?">>
<<speech "Jamal" "Not even PE. You gon' be a janitor.">>
<p>You say nothing, but Jamal can read your face.</p>
<<speech "Jamal" "Listen, brother, this gon' be rough. Hard, dirty work, and them spoiled brats gon' hate you and clown you every day. But one - ain't no other way inside that school. And two - when the time come to black some daughters, the hit gon' land even harder.">>
<p>You sigh.</p>
<<speech "You" "You didn't tell me anything about the school and who you are looking for.">>
<p>Jamal explains his plan from the beginning. It starts with his search through the personnel of the prison where your brother is held. Turning the man inside the prison perimeter to your side would be crucial - from communicating or smuggling items to planning escape. However, this personal information is highly safeguarded. The best lead Jamal found is that the 18-year-old daughter of one of the wardens is in her final year in a prestigious high school - Thatcher-Ellison School of Excellence. However, he doesn't even have her name or photo.</p>
<<speech "Jamal" "But when I saw what school she going to, the stars aligned.">>
<p>The facility's principal, Mrs. Shannon Pollock, was long on the radars because of electoral fraud. The high school serves as a polling station during the election period, and the school principal is also an election judge, overseeing the voting at her precinct. During her time, Mrs. Pollock obstructed the work of independent poll watchers, interfered with counting, and produced results vastly different from the exit polls.</p>
<<linkreplace "Shannon Pollock? That name doesn't ring any bells">><br>
<<speech "Jamal" "Why would it? But since you asking, here's a picture of her:">>
<<pic "img/school/syren/new_intro.jpg">>
<</linkreplace>>
<<speech "Jamal" "School sits in a rich neighborhood, but the district covers a lot of not-so-fortunate parts of the city too. All them votes, thrown away.">>
<p>Criminal prosecution was dismissed when the current ruling party regime was established - thanks to the many school principals nationwide who have chosen personal gain over public duty.</p>
<<speech "Jamal" "So we hit two birds with one stone. You punish this bitch for what she done, and from her you get the name of the girl who leads us to your brother.">>
<<speech "You" "That's... a lot to unfold.">>
<<speech "Jamal" "I bet. Just start working there, get to know people, build trust. Ain't gon' be no set plan on this one - you gon' have to read the room and adapt.">>
<<speech "You" "So you're telling me to fuck around and find out.">>
<<speech "Jamal" "Exactly!" "jamal_happy">>
<p>You can now work in a high school. Take a bus there and look for opportunities.</p>
<<set $school_unlocked = 4>>
[[Leave|The Hood]]<<pic "img/general/community_stage4.jpg" "location">>
<<speech "Jamal" "Hey, nice work you done here. Locals been praising it - a place to study, hold meetings, leave the kids after school. A neighborhood got a better chance surviving when something holds the people together.">>
<<speech "You" "This was not possible without Ella - I just fixed several things here and there, but she is doing the actual work here.">>
<p>Speaking of that, should you introduce Jamal to Ella?</p>
<<set _choiceMade = false>> <!-- Flag to track if a choice is made -->
<div id="choice-container"><<if not _choiceMade>> <<linkreplace "Sure!"><<set _choiceMade = true>><<replace "#output">><p>Ella is busy creating event schedule for the upcoming month. You give her a kiss and then introduce her to Jamal:</p>
<<speech "You" "Ella, this is Jamal, we... we work together.">>
<<speech "Ella" "A colleague, huh? Nice to meet you.">>
<<pic "img/ella/jamal/introduction.jpg">>
<<if $savannah_approach == 2>>
<<speech "Ella" "Wait... I recognize you. You DO work together! Oh shit, you double-teamed that bimbo on tape!">>
<<speech "Jamal" "Shh. Let's keep it between us, ok?">>
<<speech "Ella" "I can keep secrets. Tell me, what crimes should I commit for you two appear at my doorstep? I'm joking, of course!">>
<<speech "Jamal" "Heh, maybe we run some crime prevention events... if everybody agrees.">>
<<speech "You" "Maybe... But for now, we all have work to do, right? See you soon, babe.">>
<<set $ella_mmf_stage = 1>>
<<else>>
<<speech "Jamal" "Nice to meet you too. What you're doing here is vital for the community - but you probably know that already.">>
<<speech "Ella" "Thanks. If you want to help, we always need volunteers.">>
<<speech "Jamal" "I'll keep that in mind!" "jamal_happy">>
<<set $ella_mmf_stage = 0>>
<</if>>
[[You find a quiet place to talk.|SchoolIntro]]
<</replace>><<replace "#choice-container">><</replace>>
<</linkreplace>>
<<linkreplace "Better not.">>
<<set _choiceMade = true>>
<<replace "#output">>[[You find a quiet place to talk.|SchoolIntro]] <</replace>>
<<replace "#choice-container">><</replace>> <!-- Hides both choices -->
<</linkreplace>><br><</if>>
</div>
<div id="output"></div><<if $physical < 0>>
<<goto "Game over">><<else>>
<<if random(1, 100) <= 95>>
<p>You lie on the uncomfortable mattress and quickly fall asleep - a good habit you picked up in the military. Your energy is restored.</p><br>
<<set $energy = 10>>
<<else>>
<<pic "img/general/ptsd.webp">><br>
<p>The dream comes in flashes, fragmented and disjointed. Sand and smoke fill the air, choking your lungs as gunfire crackles like distant fireworks. You're running, boots sinking into uneven ground, the weight of your gear dragging you down. A face - young, terrified - appears in front of you for a split second before disappearing in a deafening explosion. The screams are muted, swallowed by a ringing in your ears that grows louder until it's all you can hear. You wake with a start, drenched in sweat, the echoes of the battlefield still pulsing in your chest.</p>
<div class="req">Your energy for the day is halved.</div><br>
<<set $energy = 5>>
<</if>>
<</if>>
<<newday>>
<<schoolpay>>
<<if _rent_due>>
<p>An envelope has been slipped under the door overnight - empty, with a week's date pencilled on it. The hood keeps this room off every list - the bolt on the door, the neighbors incurious. It isn't free.</p><br>
<<set _choiceMade = false>>
<div id="choice-container">
<<if not _choiceMade>>
<<if $money >= 20>>
<<linkreplace "Put a twenty inside ($20)">>
<<set _choiceMade = true>>
<<replace "#output">>
<p>You fold a twenty into the envelope and leave it where you found it. By the time you come back down the stairs it's gone, and nobody says a word about it - which is the whole point of paying.</p><br>
<<statchange "money" -20>>
<br>
[[Wake up|The hideout]]<</replace>>
<<replace "#choice-container">><</replace>>
<</linkreplace>><br>
<</if>>
<<linkreplace "Leave the envelope empty">>
<<set _choiceMade = true>>
<<replace "#output">>
<<if $money >= 20>>
<p>You have the twenty. It stays in your pocket - you have other plans for it. Nobody knocks. But by evening the corner store owner takes your money without looking up, and the kid on the step who used to nod turns his whole body away as you pass. Somebody spits on the stairwell landing before you get to it. Nobody down here is confused about whether you had the money.</p><br>
<<statchange "respect" -20>>
<<else>>
<p>The envelope stays empty this week - you don't have the twenty to put in it. Nobody knocks about it. But by evening the corner store owner doesn't nod back, and the kid on the step looks through you. Word travels fast about a man who takes shelter and doesn't put in.</p><br>
<<statchange "respect" -10>>
<</if>>
<br>
[[Wake up|The hideout]]<</replace>>
<<replace "#choice-container">><</replace>>
<</linkreplace>>
<</if>>
</div>
<div id="output"></div>
<<else>>
<br>
[[Wake up|The hideout]]
<</if>><<pic "img/general/logo.jpg">>
<div class="text">An ex-special forces operative comes home to find his country remade into a far-right authoritarian nightmare. When the regime throws his brother in a cell, he starts a war of his own - one fought in bedrooms, bringing down the wives and daughters of the men who help run it.
Also, he's black.</div>
<div class="text">DISCLAIMER:
This game contains heavy pornographic content, all characters are 18 years old or older. And so should be you to play it.
All encounters are consensual even in this setting. Consent is sexy.</div>
<div class="text">DISCLAIMER II:
This game runs on the deeply controversial premise that racism and fascism are, in fact, bad. If you can't handle that, this isn't your game.</div>
If you like the game, consider supporting it: https://patreon.com/TimJRebel
Shoutout to the glorious Blaze members: Lesly van den Brink, xLikemyDaddy.
Special thanks to Madarahyuuga.
[[Start|Character Setup]]<<nobr>><<if $gallery_view>><div id="gallery-notice"><span class="gallery-notice-title">Gallery replay</span><span class="gallery-notice-sub">Nothing you do here is saved</span></div><<else>><div id="stat-panel">
<div class="stat"><span class="stat-label">Money</span><span class="stat-value money"><<print "$" + $money>></span></div>
<div class="stat"><span class="stat-label">Energy</span><span class="stat-value">$energy</span></div>
<div class="stat-bar"><div class="stat-bar-fill energy" @style="'width:' + Math.max(0, Math.min(100, $energy * 10)) + '%'"></div></div>
<div class="stat"><span class="stat-label">Physical</span><span class="stat-value">$physical</span></div>
<div class="stat"><span class="stat-label">Respect</span><span class="stat-value">$respect</span></div>
<<if $target1 >= 4>><div class="stat"><span class="stat-label">Knowledge</span><span class="stat-value">$knowledge</span></div><</if>>
<<if $heat > 0>>
<div class="stat"><span class="stat-label">Heat</span><span class="stat-value">$heat</span></div>
<div class="stat-bar"><div @class="'stat-bar-fill ' + ($heat < 25 ? 'heat-low' : $heat < 60 ? 'heat-mid' : 'heat-high')" @style="'width:' + Math.min(100, $heat) + '%'"></div></div>
<</if>>
<div class="stat day"><span class="stat-label">Day $day</span></div>
</div>
<</if>>
<button id="music-mute" type="button" title="Toggle background music" @aria-pressed="String(!settings.musicOn)"><span class="music-icon"><<print settings.musicOn ? "🔊" : "🔇">></span><span class="music-label"><<print settings.musicOn ? "Mute music" : "Unmute music">></span></button><</nobr>><<if $gallery_view>><<link "Back to the Gallery">><<run setup.gallery.exit()>><</link>>
<<elseif visited("The hideout")>>[[Return to the hideout|The hideout]]
[[Walkthrough]]
[[Gallery]]
[[Cheat]]
[[Links]]<</if>>Version: $version<<album "img/general/library_" 2 "jpg" "story">>
<<statchange "knowledge" 3>>
<<statchange "energy" -5>>
[[Return|Community Center]]<<nobr>><<if $heat >= 75>><<goto "The Hood">><</if>><</nobr>>
<<pic "img/general/bus_stop.jpg" "location">><br>
<p>It's a miracle that public transport is still available in this god-forsaken place. Uncomfortable, infrequent, but functional. The bus is the easy part. The blockpost is not.</p><br>
<<if $school_unlocked == 4>>
<p>You have papers now. $player_name $player_surame, custodial staff, employed on the far side of the wall. The card goes up at chest height with everyone else's in the shift queue and the boom comes up without a second look.</p><br>
<p>The card only covers the school run, so anywhere else still gets you read. But they read you faster now. A man they've waved through fifty mornings is a man they've stopped being curious about.</p><br>
<<else>>
<p>No work pass means no labor queue. You get the other one, the one that moves when the man at the boom decides it moves. He goes through your bag, asks the same three questions until the answers stop matching, and holds a flashlight on your face longer than he needs to. He takes whatever he finds and lets you through anyway, because keeping you in was never the job. But the notebook comes out every time.</p><br>
<</if>>
<<set _hackerHeat = $school_unlocked == 4 ? 2 : 3>>
<<if $energy >=2 && $money>=2>><<link `"Take the bus to the hacker: $2, 2 energy, " + _hackerHeat + " heat"` "Hacker">>
<<statchange "money" -2>>
<<statchange "energy" -2>>
<<statchange "heat" _hackerHeat>>
<</link>><<else>>You need 2 energy and 2 money for a bus ride.<</if>><br>
<<if $school_unlocked == 4>><<if $energy >=2 && $money>=2>><<link "Take the bus to the Thatcher-Ellison School of Excellence: $2, 2 energy, 1 heat" "School">>
<<statchange "money" -2>>
<<statchange "energy" -2>>
<<statchange "heat" 1>>
<</link>><<else>>You need 2 energy and 2 money for a bus ride.<</if>><br>
<</if>>
/* CUT: brothel arc (Dre's sedan) is not going into the next release.
<<if $escort_car == 1 && $day >= $car_suspended>>
<p>Dre's gray sedan idles across from the bus stop where you left it. The queue at the blockpost watches you walk past them to a car with your kind of plates. Nobody says anything. The wall has a hierarchy even on the way out.</p>
<<if $energy >= 1>><<link "Drive to the hacker: 1 energy" "Hacker">>
<<statchange "energy" -1>>
<</link>>
<<if $school_unlocked == 4>><<link "Drive to the Thatcher-Ellison School of Excellence: 1 energy" "School">>
<<statchange "energy" -1>>
<</link>><</if>>
<<else>>Even driving takes something out of you. (1 energy needed)<</if>>
<</if>>
*/
[[Go back to the hood|The Hood]]<<nobr>><<if $laying_low > 0>><<goto "Hood Locked Down">><</if>><</nobr>>
<<album "img/general/hood_" 2 "jpg" "location">>
<<if visited() == 1>>
<p>The neighborhood is a desolate grid of cracked asphalt and crumbling concrete, where rusted streetlights flicker weakly, casting pale pools of light that do little to dispel the gloom. There is exactly one road in, and it wears a militia blockpost like a tourniquet: sandbags, wire, a queue of residents holding work passes out for inspection on their way to jobs the city keeps on its side of the wall. Boarded-up storefronts with faded graffiti line the streets, windows broken where they aren't boarded. The air smells of oil, damp brick, and something faintly metallic like blood long dried. The few people outside move quickly, heads down, avoiding eye contact; you expected this to be a black hood, but no, it's just a place where poor people live. Very poor.</p>
<p>And yet - walled off, written off, raided at dawn whenever a precinct needs its numbers - this is the one place in the country where nobody will come looking for you politely. The police enter in force or not at all. Between their visits, everything forbidden out there quietly lives in here. The wall keeps the neighborhood in. It also, you're beginning to understand, keeps you hidden.</p>
<<else>><p>The neighborhood is still as ruined as it was at your first visit. Cracked asphalt, flickering streetlights, the blockpost queue inching forward at the end of the main road; most of the windows are boarded up, with the exception of a neon-green bar down the street and the distant thump of Club Babylon, where the outsiders go slumming. The few people outside move quickly, heads down, avoiding eye contact.</p><</if>>
<div class="text"><<nobr>><<set _event=random(1,26)>><<switch _event>>
<<case 1>>
A police car cruises slowly down the street, its engine barely audible, as officers inside scan the sidewalks with cold, practiced stares. You dash into the side alley before you're seen.
<<case 2>>
A pickup truck packed with Oath Boys roars by - surplus camo, homemade armbands, a flag with their torch insignia snapping over the cab - shouts and laughter cutting through the tense quiet like a blade. Several shots are made, hopefully in the air.
<<case 3>>
A beggar sits slumped against a wall, clutching a faded cardboard sign that reads, "Will work for food," his eyes avoiding yours.
<<case 4>>
Overhead, a surveillance drone hovers silently, its blinking red light tracking every move below.
<<case 5>>
A small group of teenagers spray-paints over hateful graffiti, glancing nervously at every passing shadow. You nod to them.
<<case 6>>
A stray dog sniffs at a trash can, its ribs visible under matted fur, before darting off at the sound of a distant shout.
<<case 7>>
A man in a stained coat leans against a lamppost, lighting a cigarette with trembling hands, his eyes darting to every passing vehicle.
<<case 8>>
An Oath Boys checkpoint materializes at the corner, a makeshift barricade of sandbags and armed men waving cars to a stop for "random inspections." Simple racketeering, nothing serious - the iron-cross patches are just the uniform of the toll booth.
<<case 9>>
Two neighbors argue in hushed tones near a boarded-up store; their voices tense, but they fall silent as a patrol car approaches.
<<case 10>>
A drunk stumbles out of the bar, swearing loudly at no one in particular, his shouts echoing eerily through the empty street.
<<case 11>>
A single flickering streetlight goes out completely, leaving half the block in shadows as footsteps echo ominously from somewhere unseen.
<<case 12>>
Dawn-raid aftermath: three doors on the block hang off their hinges, and neighbors sweep glass off the sidewalk in silence. Nobody asks who was taken. Asking is how you get on the next list.
<<case 13>>
Shift change at the blockpost. The queue of residents with work passes stretches half a block, exact and unmoving, everyone holding their papers at the same practiced angle. On the other lane, a catering van for Club Babylon is waved through without stopping.
<<case 14>>
An Oath Boys truck idles in the middle of the street with its engine running, going nowhere, doing nothing. That's the point. Everyone on the block does their errands around it like water around a stone.
<<case 15>>
Two kids are playing on a rooftop - except they're not playing. One watches the blockpost, one watches the avenue, and when a cruiser turns in, a bicycle bell rings three times somewhere below and the street quietly rearranges itself.
<<case 16>>
A food line has formed outside the community center - folding tables, donated cans, someone's grandmother ladling soup. Mutual aid is technically "unregistered assembly" now, so a teenager stands at the corner, watching for uniforms.
<<case 17>>
A convoy of black sedans glides through toward Club Babylon, windows up, waved past the checkpoint that made a nurse empty her handbag this morning. Inside the cars, the outside world is coming to visit the zoo.
<<default>>
It's quiet here today. Nothing unusual happens.
<</switch>><</nobr>></div>
<<heatpatrol>>
<<hooddilemma>>
<<nobr>>
<<if $community_quest > 0>>[[Library|Community Center]]<br><</if>>
[[Gym]]<br>
[[Bar]]<br>
/* ARCHIVED: the nightclub is not going into the next release.
[[Nightclub]]<br>
*/
[[Look for work]]<br>
/* CUT: street corner + brothel are not going into the next release.
<<if $respect >= 10>><<if $heat < 50>>[[Street corner|Street Corner]] <span class="statchange">(the corner is working tonight)</span><br><<else>><div class="req">The corner is empty - with the heat you're carrying, everyone who sees you coming lays low.</div><</if>><</if>>
<<if $brothel_unlocked == 1>><<if $heat < 60>>[[The basement door|Brothel]] <span class="statchange">(under the dead laundromat)</span><br><<else>><div class="req">Two knocks at the basement door get you nothing. With your heat, Dre's peephole stays dark.</div><</if>><</if>>
*/
<<if $ella_end_quest == 1 && $ella_end_car == 0>><<linkreplace "[Ella]Find a car">>You need a car that can reliably cover long distances and be inconspicuous enough not to get much attention. You mentally note one well-maintained SUV that is always in the parking near the gym; when the time comes, you will hijack it. <<set $ella_end_car = 1>><</linkreplace>><br><</if>>
<<if $william_stage == 3 && $day >= $william_next_day>>[[The dinner with William and Agatha is tonight|William Dinner]]<br><</if>>
<<if $william_stage == 5 && $day >= $william_next_day>>[[Agatha's downtown suite is expecting you two|Swap Night]]<br><<elseif $william_stage == 5>><div class="req">Agatha's suite is booked for tomorrow.</div><</if>>
<<if $target1 > 0>><<if $heat < 75>>[[Take the bus]]<br><<else>><div class="req">The blockpost is out of the question. With the heat on your name, handing your papers to a militiaman at the only road out is the same as turning yourself in - you're not leaving the hood until it cools down.</div><br><</if>><</if>>
/* CUT: brothel arc (Dre's sedan) is not going into the next release.
<<if $escort_car == 1>><<if $day >= $car_suspended>>[[Drive out of the hood|Outside the Wall]] <span class="statchange">(Dre's gray sedan - the blockpost knows it)</span><br><<else>><div class="req">Dre still has the keys. The sedan sits behind the laundromat until day $car_suspended, and you walk like everybody else.</div><</if>><</if>>
*/
<br>[[Go to hideout|The hideout]]
<</nobr>><<pic "img/general/hideout.jpg" "location">>
<<nobr>>
<p>Your safe house, a hideout from the outside world - only Jamal knows you are here.</p> <<if visited() == 1>><div class="text">It is a grim, claustrophobic room above a run-down corner store. Viewed from above, it's a bare rectangle of cracked plaster walls and peeling paint. A single, grimy window offers a view of the alley below, its blinds permanently tilted at odd angles.
A thin mattress lies on the floor, pushed against one corner, covered by a worn, mismatched blanket. Besides this, the only furniture is a metal chair and a rickety folding table. The table holds a cheap lamp with a flickering bulb and a scattering of odd items - a half-empty water bottle, a pack of smokes, a lighter.
The door is reinforced with a thick bolt lock, the kind that screams desperation over security. In another corner, a small pile of canned food and a dented electric kettle sit on the floor next to an outlet with exposed wiring. The faint hum of the city leaks through the walls, a reminder that the world outside is no safer than this cramped refuge.</div><div class="req">You have a safe place to live - now it's time to explore. Look for ways to earn some money and gain the respect of the people of this neighborhood.</div>
<<else>>
<<linkreplace "Look around again">><div class="text">It is a grim, claustrophobic room above a run-down corner store. Viewed from above, it's a bare rectangle of cracked plaster walls and peeling paint. A single, grimy window offers a view of the alley below, its blinds permanently tilted at odd angles.
A thin mattress lies on the floor, pushed against one corner, covered by a worn, mismatched blanket. Besides this, the only furniture is a metal chair and a rickety folding table. The table holds a cheap lamp with a flickering bulb and a scattering of odd items - a half-empty water bottle, a pack of smokes, a lighter.
The door is reinforced with a thick bolt lock, the kind that screams desperation over security. In another corner, a small pile of canned food and a dented electric kettle sit on the floor next to an outlet with exposed wiring. The faint hum of the city leaks through the walls, a reminder that the world outside is no safer than this cramped refuge.</div><</linkreplace>><</if>>
<<rentinfo>>
[[Sleep]]<br>
<<if $eat_today == 0 >>
<<linkreplace "Buy some healthy food($3)">>
<<if $money >= 3>>
<<statchange "energy" 2>>
<<statchange "money" -3>>
<<statchange "physical" 1>>
<<set $eat_today to 1>>
<p>You are able to sustain yourself, but from time to time you need to get your hands on fresh vegetables and fruits to stay healthy.</p>
<<else>>
<p>You don't have enough money for fresh food. Don't worry, you can survive on cheap cans and ramens no problem.</p>
<</if>><</linkreplace>><br><</if>>
<<if $heat >= 25 && $energy > 0>>
<<linkreplace "Lay low for the day">>
<p>You kill the lights, bolt the door, and let the street forget your face for a day. You clean your one pot twice, count ceiling cracks, listen to the patrol rhythms through the wall. By evening the ache in your ribs has backed off a little. Doing nothing is its own kind of work.</p>
<<statchange "heat" -10>>
<<statchange "physical" 1>>
<<set $energy = 0>>
<div class="req">The day is spent. Better get some sleep.</div>
<</linkreplace>><br>
<</if>>
<br>
[[Go out|The Hood]]
<br>
<<if $respect >= 50 && $target1 == 0>>
<p>A manila folder is on the floor near the door - thin enough to slip over the threshold.</p> <<linkreplace "Open it">>
<div class="text"><span style="font-style: italic;">Burn after reading<br>
Brother,<br>
Been a minute. I ain't gon' apologize for it, but I figure you been sitting up there wondering if I was dead in a ditch somewhere. I wasn't. Most days.<br>
I been hearing your name, though. That's the thing about a name, it travel whether you want it to or not, and yours been walking around that neighborhood without you. <br>
So all them days you was hauling somebody's groceries and thinking it wasn't the war - that was the war, young blood. Now it's paid off, and I can put real work in your hands.<br>
<<pic "img/savannah/husband.jpg">><br>
That's Sergeant Nikolas Bond. Low rank, and low rank don't usually make my list. He made it for what he do in the basement of the city police department. Iraq vet. Came home and found out the one thing he good at pays over here too. They call it advanced interrogation. He gets confessions. Whether the man giving one done anything, that ain't never been the point.<br>
Here's the part I sat on for two days before I wrote it down. This the sadist who had your brother before they moved him to the state facility. Ain't a single photo of Jeremy released to the press since. I figure they waiting on him to heal.<br>
First, chill. Sit with it a second, then think on this instead: you put a bullet in that man, he gets a folded flag and a wall of speeches about the animals who did it. But you take his wife, and every man in his precinct look at him different for the rest of his life. Meet Mrs. Bond. Trophy wife. He think them bombshell looks make him bigger than he is, which mean she the wall holding the whole man up. Pull her out, he come down.<br>
<<pic "img/savannah/wife_potrait.jpg">><br>
You remember what we pulled off with Renner. One night, one camera, and a police chief finished for good. That was luck, brother, and I been chewing on that ever since. Luck ain't a strategy. So I spent all this quiet tryna build it into something we can aim on purpose, and I think I found the way.<br>
Name's Adriana. Hacker for hire, young, mercenary, and very, very good. She paid, she deniable, and she ain't got no cause but her own, which is exactly why I trust her more than I'd trust a believer. While you was out earning your name, she been living inside Mrs. Bond's devices, softening that bored housewife up until she almost ready to go black.<br>
This the first one we do on purpose. It land the way it landed in Renner's bedroom, it won't be the last. Adriana gon' give you the details. You also gon' need a second payment for her service, $100, and she'll haggle if you got the stomach for it. Her address on the card. Take the bus.<br>
One thing, since you new to how it work out here. You ain't got a work pass, so you ain't getting the shift queue at the blockpost. You gon' get the slow lane, and the slow lane cost you. Let 'em take what they find. Answer what they ask, twice if they ask twice. A man with nothing to hide ain't interesting, and interesting is the only thing out there that can kill you. Papers come later, brother. That's a whole other conversation.<br>
Good luck, soldier.</span></div><<set $target1 to 1>><</linkreplace>>
<<elseif $target1 == 0>><div class="req">Jamal asked to gain respect, 50 would be enough</div><</if>>
<<if $target1 >= 3>>
<br><<if $nextday == 0 && $target1 == 4 && $school_unlocked == 0>>[[(NEW MESSAGE) Use laptop|Laptop]]
<<elseif $database_access == 2>>[[(REPORT DUE) Use laptop|Laptop]]
<<else>>[[Use laptop|Laptop]]<</if>>
<</if>>
<<if $target1 == 3 && $savannah_approach == 1>>
<br>[[Fuck the police(man's wife)|Target1]]
<<elseif $target1 == 3 && $savannah_approach == 2>>
<br>[[Fuck the police(man's wife)|Target1_2]]
<</if>>
<</nobr>>/* Save-migration gate: runs on every passage render, so an old save is caught
the moment it's loaded, wherever it was saved (not just on visiting the Hood).
The Update passage itself is excluded to avoid a redirect loop. */
<<if passage() isnot "Update">>
<<if $version isnot "1.3">>
<<goto "Update">>
<<else>>
/* Post-1.3 patch (empty for now). A save already stamped 1.3 never enters
Update, so state added to StoryInit after 1.3 shipped is filled in here,
silently and before the passage body renders - one ndef-guarded line per
variable. At the next version bump, move this list into a
$version == "1.3" step in Update and point the gate above at the new
version. */
<</if>>
<</if>>Savefile from previous version found.<br>
<<if $version == "0.2">>
/* 0.2 -> 0.3 (both were public releases) */
<<set $school_unlocked = 0>>
<<set $school_intro_location = "">>
<<set $ella_mmf_stage = -1>>
<<set $hacker_ff_level = 0>>
<<set $hacker_gh_stage = 0>>
<<set $version = "0.3">>
<</if>>
<<if $version == "0.3">>
/* Ella arc renumbering (happened in the 0.4 dev build): three new beats were
inserted after the old stage 2 trigger point. Only pre-renumber saves shift. */
<<if $ella_stage >= 3>><<set $ella_stage += 3>><</if>>
<</if>>
<<if $version isnot "1.1">>
/* 0.3 -> 1.1: everything the 0.4-0.8 dev builds introduced, collapsed into one
step. Every block is ndef-guarded on its sentinel variable, so a mid-chain
dev save (0.4-0.8) also lands here safely - only its missing blocks get
initialized, everything it already tracks is left untouched. */
/* Backfills for early-0.3 saves that predate the Version4 vars */
<<if ndef $school_time>>
<<set $school_time = "morning">>
<<set $school_rep = 0>>
<<set $closet_unlocked = false>>
<<set $incel_club = false>>
<<set $player_name = "">>
<<set $player_surame = "">>
<<set $code = "">>
<</if>>
<<if ndef $heat>><<set $heat = 0>><</if>>
<<if ndef $manpower>><<set $manpower = 1>><</if>>
/* Version5: day counter, lay-low lockdown, Ella day-gating, street dilemmas */
<<if ndef $day>>
<<set $day = 1>>
<<set $laying_low = 0>>
<<set $ella_next_day = 0>>
<<set $last_dilemma_day = 0>>
<</if>>
/* Luna Star arc tracker (Version5, but missing from the old 0.3->0.4 step) */
<<if ndef $lawyer_stage>><<set $lawyer_stage = 0>><</if>>
/* Version6: the school arc */
<<if ndef $school_job>>
<<set $school_job = 0>>
<<set $detention_job = false>>
<<set $school_tasks_done = 0>>
<<set $school_pay_day = 0>>
<<set $last_school_event_day = 0>>
<<set $pollock_stage = 0>>
<<set $pollock_leverage = 0>>
<<set $amber_stage = 0>>
<<set $amber_next_day = 0>>
<<set $incel_stage = 0>>
<<set $detention_day = 0>>
<<set $gunn_trust = 0>>
<<set $gunn_case = 0>>
<<set $albright_heat = 0>>
<<set $master_key = 0>>
<<set $closet_bed = false>>
<</if>>
/* Version7: money sinks & heat management */
<<if ndef $scrub_next_day>>
<<set $scrub_next_day = 0>>
<<set $rent_day = 0>>
<<set $rent_waived = false>>
<</if>>
/* Version8: warehouse/construction reworks */
<<if ndef $warehouse_streak>>
<<set $warehouse_streak = 0>>
<<set $warehouse_last_day = 0>>
<<set $warehouse_banned = 0>>
<<set $warehouse_manager_stage = 0>>
<<set $warehouse_manager_favor = 0>>
<<set $construction_banned = 0>>
<<set $construction_wife = 0>>
<</if>>
/* Version9: the bar rework */
<<if ndef $bar_last_day>>
<<set $bar_last_day = 0>>
<<set $bartender_stage = 0>>
<<set $bar_dice_day = 0>>
<</if>>
/* Version10: library rework (folded in from the old <<libraryinit>> guard) */
<<if ndef $library_find>>
<<set $library_materials = 0>>
<<set $library_find = 0>>
<<set $last_library_event_day = 0>>
<<set $library_standoff = 0>>
<<set $backroom_unlocked = 0>>
<<set $reading_hour_day = 0>>
<</if>>
/* Version10 daily-limit trackers (were never in libraryinit either) */
<<if ndef $gym_rookies_day>><<set $gym_rookies_day = 0>><</if>>
<<if ndef $warehouse_manager_day>><<set $warehouse_manager_day = 0>><</if>>
/* Version11: Marcello Pollock + sharing Britney with Tommy */
<<if ndef $pollock_husband>>
<<set $pollock_husband = 0>>
<<set $amber_shared = 0>>
<</if>>
/* Version11 character setup (missing from the old 0.7->0.8 step) */
<<if ndef $avatar>><<set $avatar = 1>><</if>>
<<if ndef $real_name>><<set $real_name = "Marcus">><</if>>
/* Version12 daily-limit trackers */
<<if ndef $gym_wing_day>><<set $gym_wing_day = 0>><</if>>
<<set $version = "1.1">>
<</if>>
<<if $version == "1.1">>
/* 1.1 -> 1.2: all unreleased school, work, and music-era state is patched
together. Individual ndef guards also keep any development saves safe. */
<<if ndef $network_day>><<set $network_day = 0>><</if>>
<<if ndef $leverage_dry>><<set $leverage_dry = 0>><</if>>
<<if ndef $marcello_next_day>><<set $marcello_next_day = 0>><</if>>
<<if ndef $gunn_sticker>><<set $gunn_sticker = 0>><</if>>
<<if ndef $jobs_day>><<set $jobs_day = 0>><</if>>
<<if ndef $construction_open>><<set $construction_open = 0>><</if>>
<<if ndef $warehouse_open>><<set $warehouse_open = 0>><</if>>
<<if ndef $school_tasks_day>><<set $school_tasks_day = 0>><</if>>
<<if ndef $school_task_safe>><<set $school_task_safe = 1>><</if>>
<<if ndef $school_task_risky>><<set $school_task_risky = 1>><</if>>
<<if ndef $school_task_dirty>><<set $school_task_dirty = 1>><</if>>
<<if ndef $incel_path>><<set $incel_path = 0>><</if>>
<<if ndef $incel_next_day>><<set $incel_next_day = 0>><</if>>
/* Preserve completed embrace saves rather than offering their finale twice. */
<<if ndef $incel_materials>>
<<if $incel_path == 2 && $incel_stage >= 8>><<set $incel_materials = 2>>
<<else>><<set $incel_materials = 0>><</if>>
<</if>>
<<if ndef $incel_dropout>><<set $incel_dropout = 0>><</if>>
/* Inserted lessons shift only saves from before each respective change. */
<<if ndef $incel_group_practice_split>>
<<if $incel_path == 2 && $incel_stage >= 8>><<set $incel_stage += 1>><</if>>
<<set $incel_group_practice_split = 1>>
<</if>>
<<if ndef $incel_deprogram_two_memes>>
<<if $incel_path == 1 && $incel_stage >= 8>><<set $incel_stage += 1>><</if>>
<<set $incel_deprogram_two_memes = 1>>
<</if>>
<<if ndef $william_stage>><<set $william_stage = 0>><</if>>
<<if ndef $william_next_day>><<set $william_next_day = 0>><</if>>
<<if ndef $mom_thanks>><<set $mom_thanks = 0>><</if>>
<<if ndef $pollock_route>><<set $pollock_route = 0>><</if>>
<<if ndef $pollock_next_day>><<set $pollock_next_day = 0>><</if>>
<<if ndef $database_access>><<set $database_access = 0>><</if>>
<<if ndef $madi_stage>><<set $madi_stage = 0>><</if>>
<<if ndef $cafeteria_event_day>><<set $cafeteria_event_day = 0>><</if>>
<<if ndef $incel_gangbang_arranged>><<set $incel_gangbang_arranged = false>><</if>>
/* Leave the roster unrolled so the next afternoon creates a fair fresh list. */
<<if ndef $detention_roster_day>><<set $detention_roster_day = 0>><</if>>
<<if ndef $detention_has_students>><<set $detention_has_students = false>><</if>>
<<if ndef $detention_incel_roster>><<set $detention_incel_roster = false>><</if>>
<<if ndef $detention_event>><<set $detention_event = 1>><</if>>
<<if ndef $detention_incel_relieved_day>><<set $detention_incel_relieved_day = 0>><</if>>
<<if ndef $linda_stage>><<set $linda_stage = 0>><</if>>
<<if ndef $linda_next_day>><<set $linda_next_day = 0>><</if>>
<<if ndef $incel_deprogram_arranged>><<set $incel_deprogram_arranged = false>><</if>>
<<set $version = "1.2">>
<</if>>
<<if $version == "1.2">>
/* 1.2 -> 1.3: the gallery (which the 1.1 -> 1.2 step never had), Pollock's
finale, the Madi groundwork, Adriana's princess night, Ella after Vegas and
per-shift school pay. Covers 1.2 and 1.2.1 saves alike (both stamped 1.2);
ndef guards keep dev saves that already ran the old post-1.2 patch intact.
The NaN clause repairs dev saves where AdrianaRegularSex's += 1 already
ran on a missing counter. */
<<if ndef $gallery_revealed>><<set $gallery_revealed = []>><</if>>
<<if ndef $gallery_cheat>><<set $gallery_cheat = false>><</if>>
<<if ndef $gallery_view>><<set $gallery_view = "">><</if>>
<<if ndef $pollock_group_done>><<set $pollock_group_done = 0>><</if>>
<<if ndef $pollock_home_cuck>><<set $pollock_home_cuck = 0>><</if>>
<<if ndef $server_stage>><<set $server_stage = 0>><</if>>
<<if ndef $terrence_deal>><<set $terrence_deal = 0>><</if>>
<<if ndef $hacker_sex_level || Number.isNaN($hacker_sex_level)>><<set $hacker_sex_level = 0>><</if>>
<<if ndef $princess_kit>><<set $princess_kit = {}>><</if>>
<<if ndef $princess_night>><<set $princess_night = []>><</if>>
<<if ndef $princess_reroute>><<set $princess_reroute = 0>><</if>>
<<if ndef $ella_swap_verdict>><<set $ella_swap_verdict = 0>><</if>>
/* The week in progress when per-shift pay arrived is paid in full. */
<<if ndef $school_shifts>><<set $school_shifts = 5>><</if>>
<<if ndef $school_shift_day>><<set $school_shift_day = 0>><</if>>
<<set $version = "1.3">>
<</if>>
<p><strong>Notice:</strong> Updated the save to version $version.</p><br>
/* Back to the passage the save was made in when it's a hub the player walks
in and out of all day anyway. That passage already rendered once on load
(PassageHeader reaches Update through a deferred goto), so re-entering a
scene would charge its energy and move its stages a second time; a save
made anywhere else lands in The Hood. */
<<set _updateReturn = ["The hideout", "The Hood", "Hallway", "Closet", "Community Center", "Bar", "Gym", "Hacker"].includes(previous()) ? previous() : "The Hood">>
<<link "Get back to the game" _updateReturn>><</link>><<widget sayit>><<=$args[0].sayIt()>><</widget>>Variables
Character:
Money
Physical (strength etc)
Theory (intelligence)
Energy (Limits number of actions before sleep)
<<set $energy to 10>>
<<set $money to 80>>
<<set $physical to 50>>
<<set $respect to 0>>
<<set $knowledge to 0>>
<<set $eat_today to 0>>
<<set $nextday to 0>>
<<set $ella_stage to 0>>
<<set $community_quest to 0>>
<<set $library_progress to 0>>
<<set $foreman_help to 0>>
<<set $gym_assist to 0>>
<<set $gloryhole_ulocked to 0>>
<<set $target1 to 0>>
<<set $construction_rep to 0>>
<<set $manpower to 1>>
<<set $heat to 0>>
<<set $hacker_level to 0>>
<<set $hacker_bj_level to 0>>
<<set $hacked_had_sex_today to 0>>
<<set $version = "1.3">>
<<set $savannah_blacked to 0>>
<<set $savannah_cheating to 0>>
<<set $savannah_dildo_sent to 0>>
<<set $savannah_action_made to 0>>
<<set $savannah_observation_made to 0>>
<<set $savannah_approach to 0>>
<<set $savannah_pill to 0>>
<<set $ella_end_quest = 0>>
<<set $ella_end_car = 0>>
<<set $ella_end_construction = 0>>
<<set $ella_end_warehouse = 0>>
<<set $ella_end_bar = 0>>
<<set $ella_end_hacker = 0>>
====Version3====
<<set $school_unlocked = 0>>
<<set $school_intro_location = "">>
<<set $ella_mmf_stage = -1>>
<<set $hacker_ff_level = 0>>
<<set $hacker_gh_stage = 0>>
====Version4====
<<set $school_time = "morning">> ("lunch, "afternoon","evening")
<<set $school_rep = 0>>
<<set $closet_unlocked = false>>
<<set $incel_club = false>>
/* Player identity (set later via the fake-ID textboxes) and cheat/patreon code */
<<set $player_name = "">>
<<set $player_surame = "">>
<<set $code = "">>
====Version5====
/* Day counter - increments on Sleep; used for day-gated story beats */
<<set $day = 1>>
/* Heat system: $heat (0-100, declared above) is now live. $laying_low = forced lay-low days remaining.
$heat >= 75 also locks the blockpost - no leaving the hood until it decays. */
<<set $laying_low = 0>>
/* ARCHIVED: the nightclub is not going into the next release.
Nightclub:
<<set $nightclub_job = 0>> (0 = none, 1 = bouncer)
<<set $nightclub_stage = 0>>
*/
/* CUT: street dealers + brothel are not going into the next release.
<<set $dealer_stage = 0>> (0 = unknown, 1 = buyer, 2 = trusted worker)
<<set $drug_stash = 0>> (units carried, cap 5)
Brothel:
<<set $brothel_unlocked = 0>>
<<set $brothel_stage = 0>>
*/
/* Ella day-gating: earliest $day her arc can advance again */
<<set $ella_next_day = 0>>
/* Last day a street moral-dilemma event fired (one per day, plus a 2-day cooldown before the next roll) */
<<set $last_dilemma_day = 0>>
/* Luna Star, the lawyer from the reworked intro - future love-interest arc tracker */
<<set $lawyer_stage = 0>>
====Version6====
/* School arc: janitor job, task board, staff/student arcs */
<<set $school_job = 0>> (0 = not hired, 1 = janitor, 2 = janitor + detention supervisor)
<<set $detention_job = false>>
<<set $school_tasks_done = 0>> (morning tasks done today, reset on sleep)
<<set $school_pay_day = 0>> (last day the weekly pittance was paid)
<<set $last_school_event_day = 0>> (one random school event per day)
/* Principal Shannon Pollock: leverage gathered + corruption stage machine */
<<set $pollock_stage = 0>>
<<set $pollock_leverage = 0>> (0-10, dirt collected on her)
/* Britney Amber, the counselor - fast Ella-style arc, day-gated */
<<set $amber_stage = 0>>
<<set $amber_next_day = 0>>
/* Incel club (detention kids): DeShawn, Marcus, Tyrell */
<<set $incel_stage = 0>>
<<set $detention_day = 0>> (last day detention was run - one session per day)
/* Coach Tommy Gunn: trust counter + false-accusation case (0 none, 1 helped, -1 stayed out) */
<<set $gunn_trust = 0>>
<<set $gunn_case = 0>>
/* Mrs. Albright, Pollock's attack dog - annoyance counter for later payback */
<<set $albright_heat = 0>>
/* Master key progress (0-3); at 3 the basement records open */
<<set $master_key = 0>>
/* Closet upgrades */
<<set $closet_bed = false>>
====Version7====
/* Adriana's heat-scrub service: earliest $day she'll run it again (3-day cooldown) */
<<set $scrub_next_day = 0>>
/* CUT: street corner is not going into the next release.
Corner protection pact: patrol odds reduced while $day < $protection_until
<<set $protection_until = 0>>
*/
/* Weekly rent to the hood: last day it was collected (starts biting at day 15) */
<<set $rent_day = 0>>
/* Cheat-code waiver ("squatter") that turns rent off permanently */
<<set $rent_waived = false>>
====Version8====
/* Warehouse rework: shift streak (worked yesterday), last day worked, ban after getting caught pilfering */
<<set $warehouse_streak = 0>>
<<set $warehouse_last_day = 0>>
<<set $warehouse_banned = 0>> (banned until this $day)
/* Floor manager arc (0 nothing, 1 bottle seen, 2 she circles, 3 the cage, 4 her office) + one-time pilfer save */
<<set $warehouse_manager_stage = 0>>
<<set $warehouse_manager_favor = 0>>
/* Construction: ban after the trophy-wife incident; wife scene is one-off */
<<set $construction_banned = 0>> (banned until this $day)
<<set $construction_wife = 0>>
/* ARCHIVED: the nightclub is not going into the next release.
Door Rope minigame: bad shifts collected; 3 = fired
<<set $door_strikes = 0>>
*/
/* CUT: brothel/escort arc is not going into the next release.
Escort progression: $brothel_stage now live (0 local runs, 1 outside runs, 2 Dre's car)
<<set $escort_runs = 0>>
<<set $escort_intimacy = 0>> (hidden: en-route intimacy with the girls, vouches for the keys)
<<set $escort_car = 0>>
<<set $car_suspended = 0>> (Dre took the keys back until this $day)
*/
====Version9====
/* Bar rework: last day you worked the room (one event roll per day) */
<<set $bar_last_day = 0>>
/* Earl the bartender: 0 stranger, 1 knows your name, 2 trusted, 3 favor owed (free round + back-table dice) */
<<set $bartender_stage = 0>>
/* Last day you played the back-table dice game (stage 3 perk, one game per day) */
<<set $bar_dice_day = 0>>
====Version10====
/* Library rework (backfilled for old saves by the Update passage migration) */
/* One-time purchase of window glass and frames; gates work in the Windows phase (progress 50-69) */
<<set $library_materials = 0>>
/* Next one-time rebuild discovery to show (0-4), one per renovation phase */
<<set $library_find = 0>>
/* Last day a random library event fired (one per day) */
<<set $last_library_event_day = 0>>
/* Oath Boys standoff at 90% progress: 0 not fired, 1 pending, 2 resolved (they keep away from the library) */
<<set $library_standoff = 0>>
/* Banned-books back room built behind the poetry shelf */
<<set $backroom_unlocked = 0>>
/* Last day you hosted reading hour (one per day) */
<<set $reading_hour_day = 0>>
/* Gym: last day you coached the rookies (one respect session per day) */
<<set $gym_rookies_day = 0>>
/* Vittoria: last day a floor-manager scene fired (one per day) */
<<set $warehouse_manager_day = 0>>
====Version11====
/* Marcello Pollock, the principal's husband: 0 unmet, 1 intro seen, 2 voyeur scene witnessed */
<<set $pollock_husband = 0>>
/* Sharing Britney with Tommy: 0 none, 1 Tommy agreed, 2 Britney consented, 3 threesome had (repeatable) */
<<set $amber_shared = 0>>
/* Character setup (pre-intro): avatar index 1-4 (img/misc/avatar_N.jpg, drives the "You"
speech portrait) and the player's REAL name - almost nobody in-game is supposed to know
it ($player_name/$player_surame above are the fake ID from Adriana) */
<<set $avatar = 1>>
<<set $real_name = "Marcus">>
====Version12====
/* Britney's ass-to-mouth kink: counts how many times the player has indulged it
(solo anal scene, threesome, ...). Never reset; the threesome's dirtiest route needs 2. */
<<set $amber_atm = 0>>
/* Cheat menu: holds the hash of the code the player unlocked with (empty = locked).
Each release ships a new code/hash, so old saves re-lock on update. */
<<set $cheats_unlocked = "">>
/* Heat patrol cooldown: day the last patrol event (toll/shakedown/sweep) fired.
At most one patrol event every two days (earliest day 2), library-event style
like $last_dilemma_day. */
<<set $last_patrol_day = 0>>
/* School gym wing: last day you swung by Tommy's gym (one visit per day) */
<<set $gym_wing_day = 0>>
====Version13====
/* Below-decks favor network: last day school rep was traded for Pollock leverage
(one trade per day, 5 rep + 2 energy, buys +1 up to leverage 8 - the last two
points must come from the arcs/office search) */
<<set $network_day = 0>>
/* Leverage pity counter: risky/extra work orders since the last leverage drop.
Each dry order adds +15% to the next roll's leverage band; resets on a hit. */
<<set $leverage_dry = 0>>
/* Marcello lunch voyeur scene: earliest $day it can fire again (3-day cooldown, repeatable) */
<<set $marcello_next_day = 0>>
/* Gunn's bumper sticker talk (beer night): 0 not had, 1 pressed him (payoff pending), 2 sticker gone, -1 let it be */
<<set $gunn_sticker = 0>>
/* Day-labor board: which trucks showed up today. Rolled once per $day in
"Look for work" and remembered, so re-entering the passage can't reroll it. */
<<set $jobs_day = 0>>
<<set $construction_open = 0>>
<<set $warehouse_open = 0>>
====Version14====
/* School work-order board: which three jobs the cork board offered today.
Rolled once per $day in "School Tasks" and remembered, mirroring $jobs_day,
so bouncing to the hallway and back can't reroll the morning's orders. */
<<set $school_tasks_day = 0>>
<<set $school_task_safe = 1>>
<<set $school_task_risky = 1>>
<<set $school_task_dirty = 1>>
====Version15====
/* Incel club: path chosen at the Crossroads (0 none, 1 deprogram, 2 embrace) */
<<set $incel_path = 0>>
/* Earliest $day the next club meeting can run (2-day cooldown between lessons) */
<<set $incel_next_day = 0>>
/* Adriana's route-specific packet for room 021: 0 not collected, 1 collected.
Value 2 is reserved for old saves that had already completed the embrace finale. */
<<set $incel_materials = 0>>
/* Isaiah walked out at the Crossroads: 0 still in, 1 gone - seed for the future
street-corner/dealer arc (dealers.tw reads this when it ships) */
<<set $incel_dropout = 0>>
/* Marks saves authored after the group-practice lesson was split in two.
Older embrace-route saves are shifted once in the StoryInit backfill. */
<<set $incel_group_practice_split = 1>>
/* Marks saves authored after deprogramming gained a second meme lesson.
Older completed deprogramming saves are shifted once in the Update passage. */
<<set $incel_deprogram_two_memes = 1>>
/* William Hayes, old fire-team comrade: -1 swap declined, 0 unmet, 1 reunion,
2 drinks, 3 dinner arranged, 4 dinner done + Ella's admission, 5 swap
arranged, 6 swap complete. */
<<set $william_stage = 0>>
<<set $william_next_day = 0>>
/* Path A payoff: 1 = Aaron's mother's thank-you seen */
<<set $mom_thanks = 0>>
/* Reserved for the future Pollock finale: 0 unchosen, 1 group project, 2 one-on-one. */
<<set $pollock_route = 0>>
/* Reserved day gate for the future Pollock finale. */
<<set $pollock_next_day = 0>>
/* Student database: 0 locked, 1 Pollock's keycard + security key (a 2FA key
for one service login, nothing else on it) in hand, 2 Terrence
used the key on a school laptop and pulled Madi's row (Database Query),
3 reported to Jamal from the hideout laptop - Adriana is next. The player
never uses the key himself; he doesn't know how, which is why the shortcut
through Terrence costs him a witness. */
<<set $database_access = 0>>
/* Madi Collins: 1 = intro seen (1.2 end-of-content marker) */
<<set $madi_stage = 0>>
/* Cafeteria: last day a lunch random event fired (one per day) */
<<set $cafeteria_event_day = 0>>
====Version16====
/* The room 021 graduation requires Britney Amber's explicit office approval. */
<<set $incel_gangbang_arranged = false>>
====Version17====
/* Detention roster: rolled once on the first afternoon school visit each day.
A clear roster needs no supervision; otherwise it is either the four boys or
a room of other adult students. The release marker only lasts that day. */
<<set $detention_roster_day = 0>>
<<set $detention_has_students = false>>
<<set $detention_incel_roster = false>>
<<set $detention_event = 1>>
<<set $detention_incel_relieved_day = 0>>
====Version18====
/* Linda: adult senior's three-part school arc. The next-day marker spaces
the closet invitation and the room 021 finale without making either reset
when the player visits another school location. */
<<set $linda_stage = 0>>
<<set $linda_next_day = 0>>
====Version19====
/* Deprogramming route: Amber's date-line workshop must be arranged before it
can serve as the boys' graduation. */
<<set $incel_deprogram_arranged = false>>
/* Version20-23 shipped with 1.3 and are backfilled for older saves by the
1.2 -> 1.3 step in Update. A variable added after them, before the next
version bump, needs a matching ndef line in the post-1.3 patch in
PassageHeader. */
====Version20====
/* Gallery: scene replay. $gallery_revealed holds the ids the player chose to
reveal from an alternate route they can't reach on this playthrough (see the
"alt" groups in gallery.js). $gallery_view is the id of the scene currently
being replayed and is empty in normal play - it gates the sidebar, the stat
panel and the save lock, so nothing else may write to it. Whether a scene was
legitimately seen is NOT stored: it's derived from the arc's own stage
variables, which makes the gallery work retroactively on old saves. */
<<set $gallery_revealed = []>>
<<set $gallery_cheat = false>>
<<set $gallery_view = "">>
====Version21====
/* Pollock's finale. She turns down the blackmail she was braced for (money,
a job, herself, in that order) because a deal would put her back where she
was, and names her own price instead. $pollock_route picks the shape in
Pollock Unmasked; the scene itself is the next day, no prep in between.
Group route: the handoff happened, the report is owed. A flag rather than
visited(), so the gallery can open the report on its own. 1 = the boys had
her alone, 2 = her husband was sent up to watch (the report branches on it). */
<<set $pollock_group_done = 0>>
/* One-on-one route: what happened to Marcello at the house. 0 unchosen,
1 sent out of the room (she comes back down in white lace), 2 kept in the
chair and made to watch.
Picks which half of the finale plays and is read again by the aftermath. */
<<set $pollock_home_cuck = 0>>
/* School server room. Remote credentials only reach the district portal; the
building's own stack (door controllers, camera recorder, wireless) is
air-gapped, so Adriana needs hardware physically on the rack before the
Madi operation can start. 0 not raised, 1 she's asked for it (the black box
is in your pocket), 2 Terrence took the job. */
<<set $server_stage = 0>>
/* Adriana's price for the Madi job (Adriana New Target). She turns down money,
services and entertainment: what she wants is the boy who ran the query.
0 undecided, 1 the player agreed to hook them up - Terrence carries her
invitation and this is the hook for future Adriana-Terrence scenes,
2 the player paid $100 like Mrs. Bond instead and Terrence does the server
room as a plain job for nothing but the work, 3 the player offered her the
princess night instead (only offered while it's owed, $hacker_level 8) and
Terrence stays out of it the same way as 2. Server Room Job branches on 1 vs
the rest. */
<<set $terrence_deal = 0>>
/* Adriana's repeatable vaginal scene (AdrianaRegularSex, open from $hacker_level 7):
times played. Like $hacker_bj_level/$hacker_ff_level, reaching 3 unlocks her
next beat - AdrianaSex then offers the princess night list. */
<<set $hacker_sex_level = 0>>
====Version22====
/* Adriana's princess night, the last beat of her $hacker_level ladder (8 = she
handed over her list, 9 = the night happened). Item id -> first $day the item
is usable at her lair; a key that's absent = not acquired yet. Her cart and
Vittoria's reroute store $day + 1 (next-day delivery), the school's
confiscation tub and Earl's tap line store $day. Item names, prices and
sources live in setup.princess (StoryScript.js). */
<<set $princess_kit = {}>>
/* Segment and choice ids from the current (or last) princess night, reset when
it starts. The Playground hub reads it to hide what's been played; "glazed"
marks the one-way switch once the cum-lube bottle is open. */
<<set $princess_night = []>>
/* 1 once Vittoria rerouted the rest of the princess cart through the warehouse
(Adriana has a line about the "replacement shipment" box). */
<<set $princess_reroute = 0>>
====Version23====
/* Ella after the night with William and Agatha (Ella After Vegas, open once
$william_stage is 6 and Pollock's finale is done on either route). What her
visit came to: 0 not made yet, 1 she was disappointed by what he told her
about the school and asked to be alone (the couch scene is missed for good),
2 the couch scene played in the tender tone, 3 in the "target" tone. The
value is read by both sex passages for her lines, so it lives in story state
rather than a temp. Both exits move $ella_stage to 13. */
<<set $ella_swap_verdict = 0>>
/* School wage is per shift: days in the current pay week with at least one
work order done (capped at 5 when paid), and the last day logged so several
orders on one day count once. See <<schoolpay>> / <<schoolshift>>. */
<<set $school_shifts = 0>>
<<set $school_shift_day = 0>>
====Audio (track cache, not state)====
/* Background music, driven by "music-*" passage tags (see StoryScript.js).
"theme" plays on the session's first entry to a music-theme passage; any
cached "theme_2", "theme_3", ... (numbered, no gaps) then shuffle after it.
Adding a rotation track = dropping the mp3 in audio/ + one line here.
Audio files are NOT bundled by tweego - they load from audio/ next to index.html,
so release zips must include the audio/ folder. */
<<cacheaudio "theme" "audio/theme.mp3">>
<<cacheaudio "theme_2" "audio/theme_2.mp3">>
<<cacheaudio "theme_3" "audio/theme_3.mp3">>
<<cacheaudio "theme_4" "audio/theme_4.mp3">>
<<cacheaudio "theme_5" "audio/theme_5.mp3">>
/* School zone: tagged "music-school_theme" on the School passage. */
<<cacheaudio "school_theme" "audio/school_theme.mp3">>
<<cacheaudio "school_theme_2" "audio/school_theme_2.mp3">>
<<cacheaudio "school_theme_3" "audio/school_theme_3.mp3">><<pic "img/general/hackerlair.jpg" "location">>
<<if visited() == 1>>
<p>Finding the hacker's lair feels like stepping into a different world. The address leads you to a forgotten industrial district, block after block of abandoned warehouses with their windows knocked out. One building stands out - a crumbling structure with boarded windows and graffiti marking its walls. You knock on a rusted side door, and after a tense moment, it creaks open just enough for a single wary eye to appraise you.</p>
<p>Inside, the air is thick with the hum of machinery and the faint ozone tang of overheated electronics. The space is dimly lit by a patchwork of monitors casting shifting glows of green and blue onto concrete walls. Wires run tangled across the floor to makeshift workstations cluttered with keyboards, circuit boards, and empty energy drink cans. One corner of the room, in contrast, is well-lit with a daylight lamp and provides the impression of normalcy, with some salvaged furniture and bright-colored walls.</p>
<p>The hacker is younger than you expected, with sharp eyes that keep flicking from screen to screen even while she talks to you. Her fingers drum impatiently on the desk as she sizes you up.</p>
<<else>>
<p>You step inside the hacker lair and are welcomed with the hum of machinery and dim lights from a patchwork of monitors casting shifting glows of green and blue onto concrete walls. Adriana is sitting behind them, looking busy.</p>
<</if>>
<<if $target1 >=1 && $target1 < 3>>[[Talk business|Target1]]<br><</if>>
<<if $database_access == 3 && $server_stage == 0>>
<p>A school principal's keycard and a security key on a zip tie are in your pocket, and a name is in your head. She's already looking at you like she can tell.</p>
[[Talk business: a new target|Adriana New Target]]<br>
<</if>>
/* Once room 021 reaches its materials beat, keep this available until the
packet is actually collected. This also recovers cleanly if an older save
reached a later club stage with $incel_materials still at 0. */
<<set _incelMaterialsNeeded = $incel_materials == 0 && $incel_path > 0 && $incel_stage >= 5>>
<<if ($target1 == 4 && $school_unlocked == 1) || _incelMaterialsNeeded>><<linkreplace "Talk business">>
<<if _incelMaterialsNeeded>>
<<if $hacker_level >= 7>>
<<if $incel_path == 1>>
<<speech "Adriana" "If only it were so easy to get rid of incel bullshit... I have some materials I can share with you, but I can't guarantee it will work.">>
<<else>>
<<speech "Adriana" "I'll give you stuff I used to make white housewives interested in black dicks. With a little tweaking, it should work on the other side, too.">>
<</if>>
<<set $incel_materials = 1>>
<div class="req">Now you have demonstration materials for next club meeting.</div>
<<else>>
<<if $incel_path == 1>>
<<speech "Adriana" "Before you ask me anything, how about you just fuck me senseless?">>
<<else>>
<<speech "Adriana" "You’re telling me you have four young black studs who you want to turn into gang-bang team, and you need help getting the materials? Oh, but you NEED to entertain me first!">>
<</if>>
<div class="req">You know the drill - entertain the lady and get the materials.</div>
<</if>>
<<elseif $hacker_level >= 6>>
<p>You ask for a false ID.</p>
<<speech "Adriana" "I'm doing this just because you're so fun to play with...">>
<p>Adriana gets to work. The whole thing looks relatively easy, as she already has connections to most state databases and a supply of pre-fabricated cards.</p>
<<speech "Adriana" "Got any preferences on your name? I already have a 'Tyron Williams' in the database, so it's less work for me and less work for anybody trying to guess your ethnicity, lol.">>
<<set $player_name to "Tyron">><<set $player_surame to "Williams">>
<<textbox "$player_name" "Tyron" autofocus>><<textbox "$player_surame" "Williams">><br>
<<linkreplace "Go with this one">>
<<replace "#name">>
<<speech "Adriana" "Anything you wish, daddy~">>
<p>You take a freshly printed ID in your hands. It looks real, it has your face on it - and a name that you need to get used to.</p>
<<speech "You" "Thanks. You can call me that, I guess. I'm not your dad anyway.">>
<<speech "Adriana" "Awww, you don't want to be my daddy, Mr. $player_surame? Am I too hot to handle?">>
<<speech "You" "I just need to get familiar with it, that's all.">>
<<speech "Adriana" "Fine, I'll be screaming your fake name next time you'll smash my pussy with your big black cock, $player_name!">>
<<set $school_unlocked = 2>>
<div class="req">You can now text Jamal and inform him about the ID.</div>
<</replace>>
<</linkreplace>>
<div id="name"></div>
<<else>>
<<speech "Adriana" "You want a fake ID? It's such a simple and boring task you'll have to entertain me first.">>
<div class="req">Unlock more sex options with Adriana to proceed.</div>
<</if>>
<</linkreplace>><br><</if>>
<<if $hacker_level > 0>>[[Do pleasure|AdrianaSex]]<br><</if>>
<<if $hacker_level == 8 && setup.princess.cartLeft().length > 0>>[[Go through her princess cart|Adriana Princess Cart]]<br><</if>>
<<if $hacker_level >= 2>>
<<if $heat >= 25 && $day >= $scrub_next_day>>
<<if $heat >= 75>><<set _scrub_price = 100>><<set _scrub_relief = 35>>
<<elseif $heat >= 50>><<set _scrub_price = 60>><<set _scrub_relief = 25>>
<<else>><<set _scrub_price = 30>><<set _scrub_relief = 15>><</if>>
<<if $hacker_level >= 5>><<set _scrub_price = Math.trunc(_scrub_price * 0.75)>><</if>>
<<set _scrub_label = "Ask her to scrub your heat ($" + _scrub_price + ")">>
<<linkreplace _scrub_label>>
<<if $money >= _scrub_price>>
<p>You describe your problem. Adriana doesn't even look away from her screens - she's already pulling up the precinct's shared drive like it's her own downloads folder.</p>
<<speech "Adriana" "Field reports, patrol notes, informant tips... it's all just files, baby. Files get corrupted. Faces in drone footage get... smudged. Watch this.">>
<p>Her fingers blur over the keyboard. Somewhere in a precinct database, the man the patrols keep flagging stops matching your face. A tip sheet loses a page. A drone log develops a gap where your block used to be.</p>
<<if $hacker_level >= 5>><<speech "Adriana" "Girlfriend prices, by the way. Don't tell my other clients I have a heart.">><</if>>
<<set _scrub_cost = -_scrub_price>><<set _scrub_drop = -_scrub_relief>>
<<statchange "money" _scrub_cost>>
<<statchange "heat" _scrub_drop>>
<<set $scrub_next_day = $day + 3>>
<<speech "Adriana" "Now get out and stay boring for a few days. If I scrub the same face twice in a week, the pattern I'm erasing becomes ME.">>
<<else>>
<<speech "Adriana" "Sweetie, I love you, but the darknet doesn't run on affection. Come back with cash.">>
<</if>>
<</linkreplace>><br>
<<elseif $heat >= 25 && $day < $scrub_next_day>>
<div class="req">Adriana won't touch the precinct systems again yet. "Same face twice in a week makes a pattern." (Available on day $scrub_next_day)</div>
<<elseif $heat < 25 && $heat > 0>>
<div class="req">"Scrub WHAT? You're a nobody in their systems right now. Congratulations. Not worth logging in for."</div>
<</if>>
<</if>>
<<if $ella_end_quest == 1 && $ella_end_hacker == 0>><<linkreplace "[Ella]Pick up some electronics">>When Adriana is not looking, you pocket some of the equipment lying around. It doesn't look like she needs it, and you can sell it for scraps. Should you say goodbye? Probably not.<<set $ella_end_hacker = 1>><</linkreplace>><br><</if>>
[[Leave|The Hood]]<<pic "img/adriana/pose.jpg">>
/* Two scenes a day, 3 energy each: her arc used to cost nothing but calendar
days, so it competed with nothing and could only be waited out. */
<<if $hacked_had_sex_today < 2>>
<<set _line = either("All work and no play makes Adriana a dull girl","Finally!","I need something black in my life...", "Let's have some fun!")>>
<<speech "Adriana" _line>>
<<set _canPlay = $energy >= 3>>
<<if $hacker_level == 1>>
<<if _canPlay>>[[So, about that skill practice...|AdrianaQuestBJ]]<br><</if>>
<<else>>
<<if _canPlay>>[[Blowjob|AdrianaRegularBJ]]<br><</if>>
<</if>>
<<if $hacker_level == 3>>
<<if _canPlay>>[[I REALLY want to try something else|AdrianaFirstFF]]<br><</if>>
<<elseif $hacker_level == 2>>
<<speech "You" "Hey, maybe we can try something else?">>
<<speech "Adriana" "Lol what, there is no way I'm taking your monster dick anywhere but my mouth, sry!">>
<<elseif $hacker_level >= 4 && $hacker_level <= 5>>
<<if _canPlay>>[[Facefuck|AdrianaRegularFF]]<br><</if>>
<</if>>
<<if $hacker_level == 5>>
<<if _canPlay>>[[It's time to talk|AdrianaGloryHole]]<br><</if>>
<<elseif $hacker_level == 4>>
<<linkreplace "Still only oral stuff?">>
<<speech "Adriana" "I'm training my other hole so one day you can fuck me properly~">>
<<set _randomvid = either(1,2,3)>>
<<if _randomvid == 1>>
<<video "img/adriana/pussy_practice_1.webm">>
<<elseif _randomvid == 2>>
<<video "img/adriana/pussy_practice_2.webm">>
<<else>>
<<pic "img/adriana/pussy_practice_3.jpg">>
<</if>>
<</linkreplace>><br>
<<elseif $hacker_level == 6>>
<<if _canPlay>>[[Fuck her at last|Adriana Lair Creampie]]<br><</if>>
<<elseif $hacker_level >= 7>>
<<if _canPlay>>[[Pound her pussy|AdrianaRegularSex]]<br><</if>>
<<if $hacker_level <= 8>>
<<linkreplace "Watch her anal practice">>
<<set _line = either("Pussy's handled, so now I'm training my other hole for you~","Pussy was the tutorial. This ass is the final boss~","Pull up a chair, daddy, you're gonna want to see this","Bigger toy today. Tell me if I'm doing it wrong, lol","One day this ass is gonna take all of you. Today you just watch~")>>
<<speech "Adriana" _line>>
<p><<sayit "Adriana [bends over her desk|kneels on the salvaged couch|lies back with her knees pulled up to her chest] and [spits on|lubes up] a [fat plug|glass dildo|toy that's still way smaller than you]. She [works|twists|pushes] it into her tight little asshole [slowly|one careful inch at a time], [whimpering|biting her lip|breathing hard through her nose] as her ring stretches around it. The whole time [her eyes stay on your crotch|she keeps glancing at the bulge in your pants|she's obviously doing the math on your crotch], and she [goes a little deeper with every breath|pumps it until it slides in and out easy|holds it all the way in until she stops shaking]. She's training that hole for the day she finally takes your massive black dick up her ass, and she [wants you there to watch the progress bar fill up|wants you to see how close she's getting].">></p>
<<set _randomvid = either("img/adriana/anal_practice_1.webm","img/adriana/anal_practice_2.webm","img/adriana/anal_practice_3.webm","img/adriana/anal_practice_4.webm")>>
<<video _randomvid>>
<</linkreplace>><br>
<</if>>
<<if $hacker_level == 7 && $hacker_sex_level < 3>>
<div class="req">She keeps glancing at her glass plugs like there's something she wants to ask you. (Fuck her pussy: $hacker_sex_level/3)</div>
<<elseif $hacker_level == 8>>
<<if $princess_reroute == 1>><p>A Marketplace box stamped REPLACEMENT SHIPMENT - NO CHARGE sits open on her bench, and she keeps asking who you know.</p><</if>>
<<if setup.princess.ready() && $hacked_had_sex_today == 0 && $energy >= 5>>
[[The princess is ready|Adriana Princess Night]]<br>
<<elseif not setup.princess.ready()>>
<<if setup.princess.ordered("costume") && setup.princess.ordered("anal_lube")>>
<div class="req">The courier hasn't dropped off the dress and the lube yet. Tomorrow.</div>
<<else>>
<div class="req">No dress and no heavy-duty lube means no princess night. Go through her cart first.</div>
<</if>>
<<elseif $hacked_had_sex_today > 0>>
<div class="req">The dress is here, but she wants a fresh day for this - no other round with her first.</div>
<<else>>
<div class="req">The dress is here, but the princess night takes more than you've got left. (5 energy, you have $energy.)</div>
<</if>>
<<elseif $hacker_level >= 9>>
<div class="req">This is the end of story content for Adriana for now. She can still make fake IDs, scrub heat and prepare materials for room 021.</div>
<</if>>
<</if>>
<<if not _canPlay>>
<<speech "Adriana" "You look like the bus chewed you up on the way over. Go sleep, daddy - I'll still be here.">>
<div class="req">Whatever she has in mind takes more out of you than you've got left. (3 energy, you have $energy.)</div>
<<elseif $hacked_had_sex_today == 1>>
<div class="req">She's good for one more round today if you've got it in you.</div>
<</if>>
<<else>>
<<speech "Adriana" "Hey, it was fun, but I need to recover... And you too. Come back tomorrow, black daddy~">>
<</if>>
<<if $hacker_level == 7 && $hacker_sex_level >= 3>>
[[She's ready for one last hole|Adriana Princess List]]<br>
<</if>>
[[Back|Hacker]]<<speech "Adriana" "Fuck, I'm all wet just thinking about what you could pack down there in your pants...">>
<p>Somehow, Adriana has already lost most of her clothing except for overly sexy lingerie and is now seductively showing off her slender body. You feel blood starts pumping down in your manhood.</p>
<<video "img/adriana/blowjob_1.webm">>
<<speech "Adriana" "But you should know that I'm a nice girl, and nice girls don't fuck with someone they just met. So it's only a blowjob today.">>
<p>Her hands gently caress the visible bulge forming on your pants. You don't feel particularly attracted to the weird, out-of-your-world hacker, but you can't deny she's seductive as hell; you can agree to a lot of things as long as she keeps squeezing your dick.</p>
<<video "img/adriana/blowjob_2.webm">>
<p>Adriana kneels and slowly pulls off your pants, revealing your semi-hard dick. Even in its flaccid state, it impresses the girl; everything seems tiny compared to your massive, gargantuan cock. Adriana takes some time to worship it: squeezing, sniffing, kissing. When her lips finally wrap around your shaft, you're ready to melt.</p>
<<video "img/adriana/blowjob_3.webm">>
<p>Adriana gives her best, trying to please you, but you're just too big for her tiny mouth. She's excellent at sucking your glans, and you can't deny her tongue work is pleasant, but you want to go deeper.</p>
<<video "img/adriana/blowjob_4.webm">>
<p>Your hand grasps the back of her head and pushes Adriana deeper on your big black cock. It repeatedly hits her throat, and you manage to face-fuck this slut for some time, to the surprise of both of you. One day, she'll be ready for bbc deepthroat, but not today. It's time to finish.</p>
<<video "img/adriana/blowjob_5.webm">>
<p>You finish it yourself, working your fist while she kneels there getting her breath back, her hand cupping your balls, thumb moving in slow circles. Her voice has gone hoarse and she is still talking, telling you where she wants it, bossy even now.</p>
<<video "img/adriana/blowjob_6.webm">>
<p>You had been aiming for her face. She sticks her tongue out flat and waits for it instead, eyes up, absolutely shameless, and you give her what she asked for and watch her swallow. Adriana, faithful to her nice-girl demeanor, finishes every last drop.</p>
<<speech "Adriana" "~Looking forward to working with you~">>
<<speech "You" "That's mutual.">>
/* Math.max: Target1 can still send a save here after a cheat has moved her
further up the ladder, and this beat must not pull her back down. */
<<set $hacker_level to Math.max($hacker_level, 2)>>
<<set $hacked_had_sex_today += 1>>
<<statchange "energy" -3>>
<<if $target1 == 2>>
<<link "Now, I have a job to do" "The hideout">>
<<set $target1 to 3>>
<</link>>
<<else>>
<<return>>
<</if>><<set _line = either("I've missed your taste","How can it fit inside my mouth?","Hope I won't dislocate my jaw...", "I love wrapping my lips around your girthy black meat~","I love the way you fill my mouth.","Let me worship you like you deserve.","I'm going to savor every inch.")>>
<<speech "Adriana" _line>>
<p><<sayit "Adriana [gets on her knees|kneels|goes down] and [quickly puts her lips to work|starts sucking your dick|immediately starts to blow]. [Hacker with a sharp tongue|Bratty hacker], she's much more tolerable when [her mouth is stuffed|she is busy|her mouth is fully occupied] with your big black cock, and you enjoy the silence that is interrupted only by loud [slurping|gagging] from a very sloppy blowjob. Still, Adriana is [becoming a great cocksucker|doing a great job with her mouth|handles your cock extremely well], and you reward her with a [load of your semen|cumshot straight|protein load delivered] into her [throat|mouth|face].">></p>
<<set _randomvid = either("img/adriana/bj_common_1.webm","img/adriana/bj_common_2.webm","img/adriana/bj_common_3.webm","img/adriana/blowjob_3.webm","img/adriana/blowjob_4.webm")>>
<<video _randomvid>>
<<set $hacker_bj_level += 1>>
<<set $hacked_had_sex_today += 1>>
<<statchange "energy" -3>>
/* Only a level-2 save advances. The Blowjob link stays open at every later
level, and the counter reaching 3 there must not pull her back to 3. */
<<if $hacker_level == 2 && $hacker_bj_level < 3>>
<div class="req">Keep training her mouth to unlock new scenes: $hacker_bj_level/3</div>
<<elseif $hacker_level == 2>>
<p>New scenes unlocked! Number of blowjobs from Adriana: $hacker_bj_level</p>
<<set $hacker_level to 3>>
<<else>>
<p>Number of blowjobs from Adriana: $hacker_bj_level</p>
<</if>>
[[Go back|AdrianaSex]]<p>It's not that you don't enjoy the occasional blowjob from Adriana - on the contrary, the girl knows her way around a dick. Rather, you are taunted by her staunch desire to keep it oral only.</p>
<<speech "You" "Hey, are you sure you don't want to do something more? I can be gentle, and if you get uncomfortable, I'll stop right away.">>
<<speech "Adriana" "You'll ruin me with that massive thing of yours! I don't want to have a massive gaping hole between my legs. Besides, my mouth can do everything my other holes do, even better.">>
<<speech "You" "Oh really? Are you sure?">>
<<speech "Adriana" "Of course I am sure...">>
<p>You get tired of this constant cockblocking, and decide to hold Adriana to her word.</p>
<<speech "You" "OK then, let's test what your mouth can really do.">>
<p>Adriana snorts, confident that she stood her ground, and reaches for your penis.</p>
<<speech "You" "Wait. Did I tell you you can suck my cock yet?">>
<<speech "Adriana" "Eh... No?">>
<<speech "You" "You can start with my ass today. Show me, is your mouth that versatile, as you say?">>
<<video "img/adriana/facefuck/1_rimming.webm">>
<p>She giggles and accepts the game you play. You must say, not only she looks at her place when her face is buried in your ass, but her tongue is really doing good work stimulating your sensitive parts. You feel surprisingly great from her rimjob but get even more enjoyment degrading this over-confident brat.</p>
<<speech "You" "Hey, you look like you're enjoying eating my ass a little too much.">>
<<speech "Adriana" "Mmmm, you're right... Can I suck your cock now, please?">>
<<speech "You" "Not yet. My balls are very curious about what your mouth can do to them.">>
<<video "img/adriana/facefuck/2_balls.mp4">>
<p>Fully in submissive mode, Adriana switches to playing with your ballsack. A gamer girl, she all too well knows what teabagging means. She's so eager to gobble your nuts that you're almost afraid for your jewels; it's better to move forward, at last.</p>
<<speech "You" "You can suck my dick now, slut.">>
<<speech "Adriana" "Finally!">>
<<video "img/adriana/facefuck/3_blowjob.mp4">>
<p>You can see that she's hungry for your black meat, but she shows incredible restraint by slowly licking your shaft and carefully sucking your tip - but then succumbing to the desire to stuff her mouth thoroughly with your dick.</p>
<<video "img/adriana/facefuck/4_deep_throat.webm">>
<p>She won't get away with a simple blowjob. Today, you are going to test how deep she can take you in her mouth. First, you just shove your dick deeper into her throat; it's a mess of saliva and your pre-cum, but Adriana loves the way you almost choke her with your dick. That easy, huh? Let's try something else then.</p>
<<speech "You" "If you say your mouth is better than your pussy, I'll fuck it like it's a pussy.">>
<<video "img/adriana/facefuck/5_facefuck.mp4">>
<p>You turn Adriana around and slam your cock inside her mouth. Well-lubed after a very sloppy blowjob, it does feel like a pussy that you could just slam balls-deep; you have to remind yourself that you can choke the poor girl with your monster cock, but it just feels so good!</p>
<<speech "Adriana" "*gag-gag-gag* I'm... If you continue like that, I'll puke...">>
<div id="choice-container">
<<linkreplace "Then puke, bitch!">>
<<replace "#output">>
<<video "img/adriana/facefuck/6_puke.mp4">>
<p>You don't really care what's happening down there; if anything, the counterflow of vomit feels great on your dick. Occasionally, you give Adriana a breather before slamming your dick back down her throat, making her puke some more. Her face is a mess; there is a puddle of vomit below her, and this whole scene would gross you out if you didn't enjoy dominating Adriana so much.</p>
<<include "AdrianaFirstFF Tail">>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Then puke, bitch!"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Slow down">>
<<replace "#output">>
<<video "img/adriana/facefuck/7_breather.mp4">>
<p>Not wanting to make a mess, you pull out your dick from her throat and slap her face with it. It's all slimy and gooey, and now her face is too; if she can't handle a facefuck, she'll have to endure being your cumrag.</p>
<<include "AdrianaFirstFF Tail">>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Slow down"</em></div><</replace>>
<</linkreplace>>
</div>
<div id="output"></div>/* The shared ending of AdrianaFirstFF, included by both of its choices so the
last clip and the level-up only show once one of them is picked. */
<<video "img/adriana/facefuck/8_cum.webm">>
<p>You can't continue like that for long - threatening Adriana's mouth like a fuckhole is too much, and eventually, you pull out and cum at her messy face. Your semen mixes up with the slimy mix of fluids on her face, adding some proteins to the weird facial mask.</p>
<<speech "Adriana" "Fuck... My throat is sore.">>
<<speech "You" "Maybe your mouth is not good for everything, after all?">>
<<speech "Adriana" "Hey, didn't I do good?">>
<<speech "You" "Very good. But one day, I might choke you with my dick like that.">>
<<speech "Adriana" "Haha, what a nice way to go... But yes, you're right. I'll start training my other holes for your monster cock~">>
<<set $hacker_level = 4>>
<<set $hacked_had_sex_today += 1>>
<<statchange "energy" -3>>
<<return>><<set _line = either("*gag-gag-gag*","I've almost puked, fuck","Choke me with your big black cock!", "My throat needs some stretching","I love when you use my mouth like a hole to fuck!","Try to push it balls deep this time, OK?","Use my mouthpussy as you please, daddy~","The only fucks I give is facefucks, OMG I'm so lame")>>
<<speech "Adriana" _line>>
<p><<sayit "You [go wild|don't hold yourself up|resist the temptations] when Adriana wraps her lips around your [big black cock|massive penis|monster dick], and start [deepthroating|facefucking|skullfucking] this [slut|bitch|brat] without mercy. It's [loud and messy|wet and sloppy|rough and messy], but the girl takes it deeper with every thrust until [you're cumming while balls-deep in her mouth|you cum straight down her throat|she can lick your balls while you cum in her mouth]. ">></p>
<<set _randomvid = either (1,2,3,4)>>
<<if _randomvid == 1>>
<<pic "img/adriana/ff_common_1.webp">>
<<elseif _randomvid == 2>>
<<pic "img/adriana/ff_common_2.webp">>
<<elseif _randomvid == 3>>
<<video "img/adriana/ff_common_3.webm">>
<<else>>
<<video "img/adriana/ff_common_4.webm">>
<</if>>
<<set $hacker_ff_level += 1>>
<<set $hacked_had_sex_today += 1>>
<<statchange "energy" -3>>
/* Only a level-4 save advances; the Facefuck link is open at 4 and 5. */
<<if $hacker_level == 4 && $hacker_ff_level < 3>>
<div class="req">Keep facefucking her mouth to unlock new scenes: $hacker_ff_level/3</div>
<<elseif $hacker_level == 4>>
<p>New opportunities unlocked! Times facefucked: $hacker_ff_level</p>
<<set $hacker_level to 5>>
<<elseif $hacker_ff_level <= 6>>
<p><em>Her gag reflex gave up arguing a while ago. She times her breathing to you now.</em></p>
<<elseif $hacker_ff_level <= 10>>
<p><em>She keeps a towel on the desk for this. Not for you - she hates redoing her eyeliner.</em></p>
<<else>>
<p><em>You've taken more from that mouth than most men get from a whole marriage, and she still opens it grinning.</em></p>
<</if>>
[[Go back|AdrianaSex]]/* Charged once at the head of the chain, not per passage inside it. */
<<set $hacked_had_sex_today += 1>>
<<statchange "energy" -3>>
<<speech "You" "So... why are we doing this?">>
<<pic "img/adriana/gloryhole/what.jpg">>
<<speech "Adriana" "Excuse me? You don't like my blowjobs?">>
<<speech "You" "It's nice, but... what do you get from it?">>
<p>Adriana takes a deep breath and raises her voice:</p>
<<speech "Adriana" "I get to satisfy my progressive obsession with interracial porn that I consume unhealthy amounts of, in part because of working for you guys! So it's kinda your responsibility to keep me satisfied with your big black cocks, you know!">>
<<speech "You" "Wait, so Jamal is visiting you too?">>
<p>She frowns.</p>
<<speech "Adriana" "Nah... He intends to keep it professional... Anyway...">>
<p>You have no desire to get into Adriana's head further. Keep her entertained and, in exchange, receive favors from her - good enough.</p>
<<speech "Adriana" "I think my little pussy is ready for your monster, yay! But I'm kinda still afraid. I'd like to have total control, just in case... Can I tie you up?">>
<<speech "You" "Fuck no. You're too crazy.">>
<<speech "Adriana" "Fair. Well... got any other ideas?">>
<<if $gloryhole_ulocked == 1>>
<<speech "You" "I know a place with a gloryhole. A wall will separate us, and you can play with my dick in any way you wish.">>
<<speech "Adriana" "Look at you go, you kinky bastard! Inviting a lady to the gloryhole, of course I'm in!">>
<div class="req">Meet Adriana in the bar's gloryhole.</div>
<<set $hacker_gh_stage = 1>>
<<else>>
<<speech "You" "Nothing comes to mind right now... I'll get back to you.">>
<div class="req">Maybe you can find a gloryhole somewhere?</div>
<</if>>
[[Leave|The Hood]]<p>You head to the gloryholes after the bartender informs you about "the lady waiting." Knowing that behind the wall, there is a less-stable almost-crazy chick is concerning, but you put your dick in a hole anyway, hoping for the better.</p>
<<speech "Adriana" "Finally, you here... it is you, right?">>
<p>You're not in the mood for talking and simply nod - with your massive dick that quickly gets enveloped by Adriana's cock-hungry mouth.</p>
<<video "img/adriana/gloryhole/1_bj.webm">>
<<speech "Adriana" "Glog, glog, glog!">>
<p>You can recognize this mouth already and assume that Adriana can identify you by your dick as well. Not wasting much time, she switches from a blowjob to a full-on deepthroat you practiced a lot at her place. You trained to be such a good cocksucker that she could become a pretty popular girl in this establishment...</p>
<<video "img/adriana/gloryhole/2_ff.webm">>
<<speech "Adriana" "Oh fuck... I'm so full... OH MY GAWD! YES, YES, YES!">>
<p>Something changes, and you feel how your dick slides into something hot, tight, and very wet - finally, you've untapped this pussy. Adriana was right to properly stretch herself before attempting to fit your monster cock inside - now, she can easily take your full length while still being comfortable and tight. She has complete control over how deep and fast she can go, but it seems unnecessary - next time, you'll be balls deep inside her cunt, and she will beg for more.</p>
<<video "img/adriana/gloryhole/3_pussy.webm">>
<<speech "Adriana" "Yeah, I'm cumming, cumming, ughhh!">>
<p>This is new - after an intense fucking Adriana pulls your dick out and squirts right on it, abundantly cumming all over your manhood and the wall. She THAT much enjoys proper pussy fucking, and you have a suspicion she'll be booty calling you often from now on.</p>
<<video "img/adriana/gloryhole/4_squirt.webm">>
<p>You warn Adriana that you're about to cum, and she gets on her knees and jerks off your dick - covered in her smelly squirt and slimy pussy juices - until you unload your semen on her tongue. Bratty hacker could not be happier, but you also had your best visit to the gloryhole so far.</p>
<<video "img/adriana/gloryhole/5_cum.webm">>
<p>You give Adriana some time alone to take a breather and return to the bar. On your way out, you meet some white dude heading to the gloryhole:</p>
<<speech "White dude" "Hey bro, is there someone behind the wall today?" "default_male">>
<div id="choice-container">
<<linkreplace "No">>
<<set $hacker_gh_stage = 4>>
<<replace "#output">>
<<speech "White dude" "Fuck, I'm so unlucky. Well, next time, then." "default_male">>
<p>You get back to the bar and wait for Adriana.</p>
[[Leave|AdrianaGloryholeEnd]]
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"No"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Yes">>
<<set $hacker_gh_stage = 2>>
<<replace "#output">>
<<speech "White dude" "Nice! Let's hope she knows something about pleasing a man!" "default_male">>
<p>Dude is excited to check out the gloryhole, manned by Adriana.</p>
[[Watch for a bit|AdrianaGloryholeShare]]<br>
[[Leave|AdrianaGloryholeEnd]]
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Yes"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Maybe (pimp Adriana)">>
<<set $hacker_gh_stage = 3>>
<<replace "#output">>
<p>You're unsure where this is coming from, but fighting this impulse is too hard.</p>
<<speech "White dude" "What do you mean, maybe?" "default_male">>
<<speech "You" "It's my girl behind the wall. Give me $10, and she can serve you, too." "default_male">>
<<speech "White dude" "But I've paid on the bar already!" "default_male">>
<<speech "You" "Believe me, she's worth every penny." "default_male">>
<p>The dude is hesitant but too horny to decline your offer.</p>
<<speech "White dude" "Fuck you, pimp, here's your cash! Now fuck off!" "default_male">>
<<statchange "money" 10>>
<p>He throws some cash at you and goes to the gloryhole.</p>
[[Watch for a bit|AdrianaGloryholeShare]]<br>
[[Leave|AdrianaGloryholeEnd]]
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Maybe (pimp Adriana)"</em></div><</replace>>
<</linkreplace>>
</div>
<div id="output"></div><p>You find a spot where you can peek at what's happening without anyone noticing. Adriana was getting dressed and ready to leave when she saw the next dick appearing in the hole. For a moment, she looks confused - but in a blink of an eye, she gets her mouth to work on a stranger's cock.</p>
<<video "img/adriana/gloryhole/6_dress.webm">>
<<if $hacker_gh_stage == 2>>
<<speech "White dude" "So fucking deep!" "default_male">>
<<else>>
<<speech "White dude" "Take it deeper, whore! Earn your pay!" "default_male">>
<</if>>
<<video "img/adriana/gloryhole/7_ff.webm">>
<p>Adriana has no problem deepthroating the white guy after extensive practice with your black cock. It's a bit sloppy, though, and the saliva ropes join the squirt puddle on the floor under the hole. You've seen enough - time to grab a cold one at the bar.</p>
[[Leave|AdrianaGloryholeEnd]]<<pic "img/general/bar_1.jpg" "location">>
<<if $hacker_gh_stage == 4>>
<p>Adriana joins your booth shortly after.</p>
<<speech "Adriana" "That was fun! I'd say I would visit the gloryhole often, but I might just got addicted to your black monster today.">>
<<speech "You" "Let's hope rehab can fix that.">>
<<speech "Adriana" "Haha, you wish! See you next time, black daddy!">>
<<else>>
<p>It takes some time before Adriana joins you in the bar. Her face is plastered with the stranger's cum, but no one in the bar seems to notice that.</p>
<<speech "Adriana" "What, is there little something on my face?">>
<<pic "img/adriana/gloryhole/facial.webp">>
<<speech "You" "I'd offer you a napkin, but you clearly prefer the 'hands-free' approach.">>
<<speech "Adriana" "Hey, I do use my hands during the blowjob! Anyway... You seem awfully calm about your girl being violated in the bar backrooms!">>
<<speech "You" "Just because I know that slut like you would enjoy the opportunity to suck on some stranger's cock.">>
<<speech "Adriana" "And I did... But it's true that once you go black, you never go back. It was fun, but serving your massive black monster is way more enjoyable.">>
<<pic "img/adriana/gloryhole/cleanup.webp">>
<p>Adriana pauses to clean her face by collecting cum with her fingers and then licking them spotless. Now she gets some attention from the bar patrons, who wish they visited the gloryhole while she was there.</p>
<<if $hacker_gh_stage == 2>>
<<speech "Adriana" "If you don't mind sharing... We could have a lot of fun here. Just look at them, gazing over the body of your hot slut.">>
<<speech "You" "Let's think about it.">>
<p>After some time, you leave the bar and part ways.</p>
<<else>>
<<speech "Adriana" "One more thing before we go. The dude was talking something about money - do you know anything about it?">>
<<speech "You" "Oh yes, sure. Here's your cut.">>
<p>You take out two folded 5-dollar bills, demonstratively keep one for yourself, and give another to Adriana.</p>
<<statchange "money" -5>>
<<speech "Adriana" "So you're telling me that I just sucked someone's dick for a fiver? That's too cheap!">>
<<pic "img/adriana/gloryhole/disgust.jpg">>
<<speech "You" "I love the fact that you're grossed out not because I sold your oral services but because of the price I set.">>
<<speech "Adriana" "Well, that's too! I guess... I'm not sure... Why do I like the fact you made me a cheap cock-sucking whore?">>
<p>You're saying things you would never say, but you weirdly enjoy taking control of this strange dynamic between you and Adriana.</p>
<<speech "You" "Because brats like you enjoy making their daddies happy. I'm your daddy, and I liked pimpin' you out.">>
<p>Adriana bites her lip. She did not expect that from you when she playfully called you daddy or teased you with her bratty attitude.</p>
<<speech "Adriana" "You know... For someone who dislikes racial stereotypes, you're an awfully good pimp. I'm ready to go back working that dollar for you, you bastard.">>
<<speech "You" "Next time, when I'll get my Cadillac and fur coat.">>
<<speech "Adriana" "Haha, I'd love to see you in that!">>
<p>Well, that was fun. You spend some more time in the bar and then part ways. Have you gone too far?</p>
<p>Oh yes.</p>
<</if>>
<</if>>
<<if $school_unlocked == 1>>
<<speech "Adriana" "Before we go, you still need that ID? Come to my place and I'll fix you up.">>
<</if>>
<<set $hacker_level = 6>>
<div class="req">Adriana has one more invitation waiting at her lair.</div>
[[Leave|The Hood]]<p>Adriana shuts down the monitors one by one, leaving only the daylight lamp over the salvaged couch. Without the blue screen glow she looks younger, smaller, and considerably less certain than she did behind a keyboard.</p>
<<speech "Adriana" "I have been thinking about this since the bar gloryhole. I want you to fuck me. In my nasty fuckhole. Will you fuck me, black daddy?">>
<p>She gives you that smug little grin, expecting another joke, but you are done letting her steer the room with it. You hate this nickname. She knows it.</p>
<<speech "You" "Lie down. Legs up. Now.">>
<p>Her grin turns hungry. Adriana strips in a rush, drops onto the salvaged couch, and folds herself into a deep plough: knees pulled past her shoulders, thighs spread wide, dripping pussy presented right over her own face. Her lips part underneath it as she looks up at you, suddenly very aware of what she has asked for.</p>
<<speech "Adriana" "Fuck... yes. Use me, daddy. Please.">>
<p>You take both hips in your hands and drive into her wet cunt. The angle makes every thrust hit hard and deep, leaving her folded around your cock while you use her body like the toy she offered to be. Her fingers claw at the cushions, but she keeps her legs high, panting and begging into the heat and slick that gathers against her mouth.</p>
<<video "img/adriana/stage7_sex.webm">>
<<speech "Adriana" "Don't slow down. Fuck my pussy, please - fuck me harder!">>
<p>Her teasing is gone now. There is only Adriana trembling around you, soaking the couch beneath her, and pushing her hips back into your grip every time you pull her close.</p>
<<speech "Adriana" "Cum in me! I want it inside, daddy!">>
<p>You bury yourself to the hilt and unload. With her cunt directly above her face, the spill and overflow have nowhere else to go: warm streaks run down over her swollen lips while the rest stays pumped deep inside her. Adriana opens her mouth beneath herself, tasting the proof of what you gave her as she shakes through the last of it.</p>
<<video "img/adriana/stage7_creampie.webm">>
<<speech "Adriana" "Holy fuck... that was exactly what I wanted.">>
<p>She slowly unfolds, flushed, soaked, and smiling like she has just won an argument. After a minute she reaches for her laptop again, still leaking your cum and muttering something incomprehensible.</p>
<<statchange "energy" -3>>
<<statchange "respect" 2>>
<<set $hacked_had_sex_today += 1>>
<<set $hacker_level = 7>>
[[Back to the lair|Hacker]]<<set _line = either("Skip the foreplay, I got wet the second you walked in","My pussy's been aching for your monster all day~","Harder than last time, OK? I want to feel it when I sit down tomorrow","I left a raid for this, so you better wreck me","Stretch me out, daddy, I can take all of it now~","Time to overclock this white pussy, lol","Ruin my little pussy, black daddy~")>>
<<speech "Adriana" _line>>
<p><<sayit "[Before you get your pants off|Before you even say hi|The second the door shuts], Adriana is already [bent over her desk|spread out on the salvaged couch|on her back with her knees folded to her chest], [begging|whining] for your [big black cock|monster dick]. Her pussy is [soaking wet|already dripping|slick and swollen], but still tight enough that the first thrust [splits her open|stretches her lips wide around you]. You pound that [greedy pussy|bratty cunt|needy little hole] [hard and deep|without mercy|like you're trying to break it], and pretty soon that smart mouth of hers can't manage anything but [broken squeals|choked-off screams|drool and babbling]. Then you [bury yourself to the hilt|slam in one last time|pin her hips down] and [pump your load deep inside her|flood her cunt with cum] while her [juices run down your balls|legs shake around you|squirt splashes your thighs].">></p>
<<set _randomvid = either("img/adriana/vaginal_common_1.webm","img/adriana/vaginal_common_2.webm","img/adriana/vaginal_common_3.webm")>>
<<video _randomvid>>
<<set $hacker_sex_level += 1>>
<<set $hacked_had_sex_today += 1>>
<<statchange "energy" -3>>
<<if $hacker_level == 7 && $hacker_sex_level < 3>>
<div class="req">Keep fucking her pussy to unlock new scenes: $hacker_sex_level/3</div>
<<elseif $hacker_level == 7 && $hacker_sex_level == 3>>
<p>New scenes unlocked! Times you've fucked her pussy: $hacker_sex_level</p>
<<else>>
<p>Times you've fucked her pussy: $hacker_sex_level</p>
<</if>>
<<if $hacker_sex_level <= 2>>
<p><em>She still flinches when you first push in, and a second later she's grabbing your hips to pull you deeper.</em></p>
<<elseif $hacker_sex_level <= 4>>
<p><em>She has started blocking out time for you in her calendar.</em></p>
<<else>>
<p><em>For a girl who was scared you'd leave her gaping, she spends a suspicious amount of time checking herself on the webcam afterwards, and looks almost disappointed when she closes back up.</em></p>
<</if>>
[[Go back|AdrianaSex]]/*
<<princessboard>> - Adriana's princess night list as a checklist: one row per
item with an essential/extra chip and where the item stands. Item data and the
status wording live in setup.princess (StoryScript.js). It deliberately says
nothing about what an extra unlocks.
*/
<<widget "princessboard">>
<div class="closet-board">
<div class="board-title">Her Royal Highness's list</div>
<<for _princessItem range setup.princess.items>>
<div class="board-row"><span class="board-label"><<if _princessItem.essential>><span class="task-tier tier-dirty">essential</span><<else>><span class="task-tier tier-safe">extra</span><</if>><<print _princessItem.name>></span><span class="board-value"><<print setup.princess.status(_princessItem.id)>></span></div>
<</for>>
</div>
<</widget>><<pic "img/adriana/anal_intro.jpg">>
<p>Adriana isn't at her screens. She's cross-legged on the salvaged couch, rolling a glass plug between her fingers the way other girls fidget with a lighter, and she watches you cross the room like she rehearsed an opening line and just forgot it.</p>
<<speech "Adriana" "Okay, so. Mouth - done, you've had it every way a mouth goes. Pussy - done, lol, obviously. That leaves exactly one hole I haven't given you.">>
<<speech "You" "You've been training it for weeks. I've watched.">>
<<speech "Adriana" "Training it, yes. Giving it, no. And I'm not handing it over on some random Tuesday between a firmware dump and cold pizza, bent over the desk like it's nothing.">>
<p>She pulls a sheet of paper out from under the cushion. It's printed, because of course it's printed, and somebody has drawn a crown over the header in purple highlighter.</p>
<<speech "Adriana" "It's the last one, daddy. After this there's nothing on me you haven't had. So I want it done properly. I want to be a princess: dressed up, crowned, treated like royalty right up to the second you ruin me.">>
<<princessboard>>
<p>Her margin notes are worse than the list. Next to the dress she's written <em>ESSENTIAL, because I want to be treated like one</em>, with <em>SHORT. I said princess, not nun</em> squeezed in underneath. The lube gets <em>ESSENTIAL, because you're a monster</em>, the balls get <em>BLUE. To match the dress</em>, and at the very bottom, circled twice, she's added <em>#7 only if you got #3. Don't ask.</em></p>
<<speech "You" "What makes something essential?">>
<<speech "Adriana" "Essentials unlock the level. Extras unlock the side content. You can speedrun me with two items if you want to be that guy, but I'm a hundred-percent-completion girl.">>
<<speech "You" "And who's paying for the crown?">>
<<speech "Adriana" "Um, you? A princess doesn't buy her own dress. That's literally the whole point of being one.">>
<p>Most of the list reads like a sex-shop catalog, except for the balls and the tube.</p>
<<speech "Adriana" "Those two aren't sex-shop stock. And a bag of plastic balls plus aquarium tubing in the same basket as a crown and anal lube looks like a very weird birthday party. Be creative, think of something! You work in a school, you go to the bars...">>
<<set $hacker_level = 8>>
<div class="req">Adriana handed you her list. Go through her cart with her, and find the rest yourself.</div>
[[Go through her cart|Adriana Princess Cart]]<br>
[[Back|Hacker]]<!-- IMAGE: Adriana's middle monitor showing a glossy online store, a crown in the cart -->
<p>Adriana swings the middle monitor round on its arm. You were braced for some onion address with a skull for a logo. What you get is a big glossy store with a pink banner, four-and-a-half-star reviews and a "customers also bought" row that never ends. Every item on it is perfectly legal, and it all ships next day, even to a condemned industrial district.</p>
<<speech "Adriana" "Isn't capitalism beautiful? They can't get insulin past that wall of yours, but anal lube lands on my doorstep by ten a.m. with a smiley face on the box.">>
<<if $warehouse_manager_stage >= 4 && setup.princess.cartLeft().length > 0>>
<p>The logo on the product boxes is the one printed on every tote you've hauled at the Marketplace warehouse. Up on a mezzanine over those aisles, a floor manager who owes you a blind eye could make a box like this go astray.</p>
<</if>>
<<if setup.princess.cartLeft().length == 0>>
<p>Her cart is empty. Everything on the list that a store sells already has a tracking number.</p>
<<else>>
<div id="choice-container">
<<if not setup.princess.ordered("costume")>>
<<if $money >= 35>>
<<linkreplace "The dress, crown and gloves ($35)">>
<<pic "img/adriana/dress.jpg">>
<<if $money >= 35>>
<<speech "Adriana" "Short blue dress, little crown, long white gloves. Not the eight-dollar polyester one, I'll know. Top review says 'my husband cried'. Sold.">>
<<statchange "money" -35>>
<<set $princess_kit.costume = $day + 1>>
<div class="req">Arrives at her lair tomorrow.</div>
<<replace "#princess-board">><<princessboard>><</replace>>
<<else>>
<<speech "Adriana" "You just spent that, sweetie. Come back heavier.">>
<</if>>
<</linkreplace>><br>
<<else>>
<div class="req">The dress, crown and gloves: $35. (You have <<print "$" + $money>>.)</div>
<</if>>
<</if>>
<<if not setup.princess.ordered("anal_lube")>>
<<if $money >= 15>>
<<linkreplace "Heavy-duty anal lube ($15)">>
<<if $money >= 15>>
<<speech "Adriana" "It says 'professional strength' on the bottle, like there's a union. For the size of you, daddy, this isn't a treat. It's safety equipment.">>
<<statchange "money" -15>>
<<set $princess_kit.anal_lube = $day + 1>>
<div class="req">Arrives at her lair tomorrow.</div>
<<replace "#princess-board">><<princessboard>><</replace>>
<<else>>
<<speech "Adriana" "You just spent that, sweetie. Come back heavier.">>
<</if>>
<</linkreplace>><br>
<<else>>
<div class="req">Heavy-duty anal lube: $15. (You have <<print "$" + $money>>.)</div>
<</if>>
<</if>>
<<if not setup.princess.ordered("cum_lube")>>
<<if $money >= 15>>
<<linkreplace "Thick white cum-effect lube, three bottles ($15)">>
<<if $money >= 15>>
<<speech "Adriana" "Thick, white, 'realistic texture', and it comes in a three-pack. Stop making that face. We'll use every bottle.">>
<<statchange "money" -15>>
<<set $princess_kit.cum_lube = $day + 1>>
<div class="req">Arrives at her lair tomorrow.</div>
<<replace "#princess-board">><<princessboard>><</replace>>
<<else>>
<<speech "Adriana" "You just spent that, sweetie. Come back heavier.">>
<</if>>
<</linkreplace>><br>
<<else>>
<div class="req">Thick white cum-effect lube, three bottles: $15. (You have <<print "$" + $money>>.)</div>
<</if>>
<</if>>
<<if not setup.princess.ordered("glass_straight")>>
<<if $money >= 30>>
<<linkreplace "Glass dildo, thick and straight ($30)">>
<<pic "img/adriana/toy_smooth.jpg">>
<<if $money >= 30>>
<<speech "Adriana" "Borosilicate, thick, straight, dishwasher safe. Every review calls it 'hefty'. A princess needs a scepter.">>
<<statchange "money" -30>>
<<set $princess_kit.glass_straight = $day + 1>>
<div class="req">Arrives at her lair tomorrow.</div>
<<replace "#princess-board">><<princessboard>><</replace>>
<<else>>
<<speech "Adriana" "You just spent that, sweetie. Come back heavier.">>
<</if>>
<</linkreplace>><br>
<<else>>
<div class="req">Glass dildo, thick and straight: $30. (You have <<print "$" + $money>>.)</div>
<</if>>
<</if>>
<<if not setup.princess.ordered("glass_shaped")>>
<<if $money >= 40>>
<<linkreplace "Glass dildo, ribbed ($40)">>
<<pic "img/adriana/toy_ribbed.jpg">>
<<if $money >= 40>>
<<speech "Adriana" "The ribbed one. Every ridge goes pop on the way in and pop on the way out. It's the most expensive thing in the cart, and I've watched the product video eleven times.">>
<<statchange "money" -40>>
<<set $princess_kit.glass_shaped = $day + 1>>
<div class="req">Arrives at her lair tomorrow.</div>
<<replace "#princess-board">><<princessboard>><</replace>>
<<else>>
<<speech "Adriana" "You just spent that, sweetie. Come back heavier.">>
<</if>>
<</linkreplace>><br>
<<else>>
<div class="req">Glass dildo, ribbed: $40. (You have <<print "$" + $money>>.)</div>
<</if>>
<</if>>
</div>
<</if>>
<div id="princess-board"><<princessboard>></div>
[[Back|Hacker]]<<schoolphase>>
<<pic "img/adriana/balls.jpg">>
<p>The confiscation tub lives under the front-office counter: a big plastic storage box of everything this building has taken off its students. Phones waiting out their sentences, a dozen vapes, a laser pointer, somebody's retainer in a sandwich bag. The secretary guards it the way a dragon guards gold, if the dragon wore a floral blouse.</p>
<<if _sphase == 1>>
<<speech "Secretary" "Absolutely not. That box is school property." "default_female">>
<p>Then a teacher she likes leans over the counter with her coffee and mentions you're the one who got the staff room radiator working before the cold snap. The secretary sighs through her nose like the favor is being taken out of her own purse.</p>
<<speech "Secretary" "Five minutes. Touch nothing with a battery in it." "default_female">>
<<else>>
<<speech "Secretary" "Five minutes, Mr. $player_surame. And I didn't see you." "default_female">>
<p>A few months ago she'd have called security. Now half this building owes you something, and she has worked out which half she'd rather be on.</p>
<</if>>
<p>Under the vapes there's a mesh drawstring bag of hard plastic balls, the size you'd find in a kids' ball pit, confiscated after somebody spent a whole chemistry period lobbing them at the whiteboard. Three blue, three pink, and you take the whole bag.</p>
<<speech "Secretary" "And what does the custodial staff need those for?" "default_female">>
<<speech "You" "Gender reveal.">>
<p>She writes something down anyway.</p>
<<statchange "school_rep" -3>>
<<set $princess_kit.balls = $day>>
<div class="req">Three blue and three pink plastic balls are in your pocket.</div>
[[Back to work|Hallway]]/* Head of the princess night chain: energy and both daily slots are charged
once here, not per passage. Clips are img/adriana/anal_princess_<N>.mp4 -
the numbering has gaps (no 7-9, 17, 21-22, 30, 33, 35). */
<<statchange "energy" -5>>
<<set $hacked_had_sex_today = 2>>
<<set $princess_night = []>>
<p>The livable corner of the lair doesn't look salvaged tonight. Somebody painted the walls a bright, clean white, the couch under the daylight lamp is white now too, and a tall mirror leans against the wall where the crates of dead keyboards used to be, far enough from the racks that even the server hum sounds like it's in another building.</p>
<p>Adriana is at the mirror when you come in. She's done her makeup heavy, thick black mascara and dark lips, and she leans in and kisses her own reflection like she's the one taking herself out tonight. She doesn't stop just because she can see you in the glass.</p>
<<video "img/adriana/anal_princess_1.mp4">>
<<speech "Adriana" "Don't talk yet. Look first.">>
<p>She turns around and gives you the whole outfit: a short blue princess dress that no Disney lawyer would ever sign off on, a small crown pinned into her hair, and long white gloves up past her elbows. She does a slow turn with her hands on her hips, then a curtsy that flashes you everything under the skirt.</p>
<<video "img/adriana/anal_princess_2.mp4">>
<<speech "Adriana" "Well? Say it.">>
<<speech "You" "Your Highness.">>
<<speech "Adriana" "Correct answer.">>
<p>Then she bends at the waist, reaches back with one gloved hand and peels her panties down, taking her time about it. Her little hole is puffy and a bit swollen from all those weeks of glass plugs and practice, and she wants you to see exactly how much work went into it.</p>
<<video "img/adriana/anal_princess_3.mp4">>
<p>The crown slips when she bends, and she fixes it before she does anything else.</p>
<div id="choice-container">
<<linkreplace "Kneel and kiss the royal hole">>
<<run $princess_night.push("worship")>>
<<replace "#output">>
<p>You go down on one knee behind her like she's about to knight you and plant a kiss right on her asshole, then a slow lick for good measure. She squeals and grinds back against your face for a second before she remembers she's royalty.</p>
<<speech "Adriana" "Oh, you're good at this. Okay. Up. The princess has things to show you.">>
[[Follow her to the couch|Adriana Princess Prep]]
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Kneel and kiss the royal hole"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Slap it and tell her to get on with it">>
<<run $princess_night.push("command")>>
<<replace "#output">>
<p>You give that bare ass a slap that cracks off the new white walls and tell Her Highness to get on with it.</p>
<<speech "Adriana" "Rude. I'm writing that down. I'm also way wetter than I was a second ago, so, um, carry on.">>
[[Follow her to the couch|Adriana Princess Prep]]
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Slap it and tell her to get on with it"</em></div><</replace>>
<</linkreplace>>
</div>
<div id="output"></div>/* Her show. With both glass toys she asks which one will gape her the biggest,
and the answer is a forced choice: agree and she puts on the ribbed-glass show
(Adriana Princess Show), brag that your cock will and she skips the toys.
Everything after that lives in Adriana Princess Prep Tail, which reads
_showDone to know whether the show stretched her. */
<<set _ribbed = setup.princess.has("glass_shaped")>>
<<set _straight = setup.princess.has("glass_straight")>>
<<if _ribbed && _straight>>
<p>She settles onto the white couch with both new glass toys across her lap, the thick straight one and the ribbed one, and holds them up to the lamp like she's comparing diamonds. Then she spits on each of them in turn and runs her tongue up the glass.</p>
<<video "img/adriana/anal_princess_4.mp4">>
<<speech "Adriana" "Which one of these will make me gape the biggest?">>
<div id="choice-container">
<<linkreplace "The ribbed one. Show me.">>
<<set _showDone = true>>
<<replace "#output">>
<<speech "Adriana" "Good answer. You're so getting knighted. Sit down and watch.">>
<<include "Adriana Princess Show">>
<<include "Adriana Princess Prep Tail">>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"The ribbed one. Show me."</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Neither. Mine will.">>
<<replace "#output">>
<p>She looks at the bulge in your pants, then at the two glass toys in her gloved hands, and sets them both down on the cushion like she's just been dealt a better card.</p>
<<speech "Adriana" "Cocky. Fine, the toys can wait. You'd better be right.">>
<<include "Adriana Princess Prep Tail">>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Neither. Mine will."</em></div><</replace>>
<</linkreplace>>
</div>
<div id="output"></div>
<<elseif _ribbed>>
<p>She settles onto the white couch with the ribbed glass toy in her lap, holds it up to the lamp like a diamond and runs her tongue up every ridge.</p>
<<set _showDone = true>>
<<include "Adriana Princess Show">>
<<include "Adriana Princess Prep Tail">>
<<elseif _straight>>
<p>She lays the thick straight glass on the cushion beside her and pats it like a pet.</p>
<<speech "Adriana" "Not this one. This one's for you to use on me later.">>
<<include "Adriana Princess Prep Tail">>
<<else>>
<p>She settles onto the white couch with nothing in her lap but her own gloved hands, then turns around on the cushions and folds herself over the arm.</p>
<<include "Adriana Princess Prep Tail">>
<</if>>/* Her ribbed-glass show (clips 5-6), included by Adriana Princess Prep. */
<p>She takes the ribbed one, works up a mouthful of spit and lets it drip all over the glass, adds a squirt of the heavy-duty lube to be safe, then lies back on the couch, spreads her legs wide and pushes the massive toy into her ass one ridge at a time.</p>
<<video "img/adriana/anal_princess_5.mp4">>
<p>Once it's in she fucks herself with it, slow at first and then not slow at all, until the tight little hole she started with has stretched into something noticeably bigger.</p>
<<video "img/adriana/anal_princess_6.mp4">>/* The rest of Prep, included after her show or instead of it: the balls, the
gape check and her demand. _showDone is set by Prep when the ribbed-glass
show played, and is undefined otherwise. */
<<set _balls = setup.princess.has("balls")>>
<<if _balls>>
<p>You tip the mesh bag out onto the couch, and three blue balls and three pink ones roll across the white cushions.</p>
<<speech "Adriana" "I said blue.">>
<<speech "You" "Figured we might be doing a gender reveal.">>
<<speech "Adriana" "If anything pink comes out of my ass tonight, you're calling a doctor, not a party planner. Give me the blue ones.">>
<p>She bends over the arm of the couch and you feed them in. The first blue ball goes in with a little push and the second takes a harder one. She insists on trying the third herself, and it barely fits, stretching her wide for a second before it pops back out and bounces away across the floor. She's laughing too hard to hold the other two, and she pushes them out onto the floor one after the other.</p>
<<video "img/adriana/anal_princess_10.mp4">>
<</if>>
<<if _showDone || _balls>>
<p>You crouch behind her to admire the damage. Her gape doesn't close anymore. It just sits there, open and slick, twitching every time she breathes.</p>
<<video "img/adriana/anal_princess_11.mp4">>
<<speech "Adriana" "Is it open? Is it getting nice and open for that big black cock?">>
<<else>>
<p>She spreads her cheeks over the couch arm and shows you what weeks of practice did: a puffy little hole, already soft, winking at you.</p>
<</if>>
<<speech "Adriana" "No more toys. I want a real big black cock in there.">>
[[Give the princess what she wants|Adriana Princess Knees]]<p>She slides off the couch onto her knees in front of you, dress bunched around her hips, crown still perfectly straight.</p>
<<speech "Adriana" "But first you need to be wet, hard and ready. A princess doesn't take anything dry.">>
<p>She starts out polite, little kisses and a lot of tongue, and you give her about ten seconds of that. You know exactly what this mouth can take, so you put a hand behind her head, careful of the crown, and slide down her throat.</p>
<<video "img/adriana/anal_princess_12.mp4">>
<p>Then you fuck her face properly, the way she taught herself to take it all those afternoons at her desk, and for a while you forget you came here tonight for her ass at all. By the time you pull back, your dick is soaked, strung with ropes of spit she keeps slurping back off it.</p>
<<video "img/adriana/anal_princess_13.mp4">>
<p>You slap your cock across her cheeks and smear the mess of spit and ruined mascara all over her face while she begs in muffled moans between slaps.</p>
<<speech "Adriana" "Mmh... I want it in my fucking ass... please... please...">>
<<video "img/adriana/anal_princess_14.mp4">>
[[Give the princess her big black cock|Adriana Princess Anal]]<p>She climbs onto the couch and folds herself over the arm, ass up and head down in the white cushions, and reaches back with both gloved hands to spread herself for you. The crown is hanging on by one bobby pin.</p>
<p>You line up and push in, then pull straight back out. Push in, out again, and every time her hole gapes a little wider before it tries to close. She groans into the cushion. When you finally slide all the way in, balls-deep in one long stroke, her whole body goes rigid.</p>
<<speech "Adriana" "Oh my god, that's deep. That's so deep.">>
<p>You don't slow down, and inside a minute the princess is coming on your cock with nothing touching her pussy at all, shaking and swearing into the upholstery.</p>
<<video "img/adriana/anal_princess_15.mp4">>
<p>She braces her arms and shoulders against the back of the couch and pushes her ass back at you for more. You keep fucking her from behind and pull out all the way every few strokes. She tells you she likes that, and you like the gape you leave behind each time.</p>
<<video "img/adriana/anal_princess_16.mp4">>
<<speech "Adriana" "Don't you dare be done. I'm not even halfway through my list.">>
[[Keep her bent over|Adriana Princess Playground]]/* The player-controlled half of the night. Cum-lube is a one-way switch: the
Bottle segment pushes "glazed", which retires the default-lube entries and
opens their cum-lube versions. Each entry shows once per half. */
<<album "img/adriana/anal_princess_pose_" 2 "jpg">>
<<set _glazed = $princess_night.includes("glazed")>>
<<if _glazed>>
<p>Everything in the corner is white now: the couch, the walls, and the lube running out of her ass and down the backs of her thighs. The crown hangs off one ear, and she's still pushing her ass up for whatever you pick next.</p>
<<elseif $princess_night.length > 1>>
<p>Adriana is where you left her, folded over the arm of the white couch with her head down in the cushions and her ass in the air. Her gape hasn't closed since you walked in, and she wiggles at you to hurry up.</p>
<<else>>
<p>She doesn't get up. She stays folded over the arm of the white couch, head down in the cushions below her ass, gloved fingers still dug into the upholstery, and looks back at you upside down between her own knees.</p>
<<speech "Adriana" "That was the tutorial, daddy. Now pick something.">>
<</if>>
<<if not _glazed && setup.princess.has("cum_lube")>>
<<speech "Adriana" "Open that white bottle whenever you want. Just know that after that, everything is white.">>
<</if>>
<<if not _glazed>>
<<if not $princess_night.includes("back")>>[[Flip her on her back|Adriana Princess Back]]<br><</if>>
<<if setup.princess.has("glass_straight") && not $princess_night.includes("pestle")>>[[Pestle her with the straight glass|Adriana Princess Pestle]]<br><</if>>
<<if setup.princess.has("balls") && not $princess_night.includes("jewels")>>[[Two balls and just the tip|Adriana Princess Jewels]]<br><</if>>
<<if setup.princess.has("cum_lube")>>[[Open the white bottle|Adriana Princess Bottle]]<br><</if>>
<<else>>
<<if not $princess_night.includes("back_glazed")>>[[Flip her on her back again|Adriana Princess Back]]<br><</if>>
<<if setup.princess.has("glass_straight") && not $princess_night.includes("pestle_glazed")>>[[Pestle her glazed ass with the straight glass|Adriana Princess Pestle]]<br><</if>>
<<if setup.princess.has("balls") && not $princess_night.includes("jewels_glazed")>>[[Two balls, and make her push them out|Adriana Princess Jewels]]<br><</if>>
<<if setup.princess.has("glass_shaped") && not $princess_night.includes("ribbed")>>[[The ribbed glass, glazed|Adriana Princess Ribbed]]<br><</if>>
<<if not $princess_night.includes("feed")>>[[Feed it to her off your cock|Adriana Princess Feed]]<br><</if>>
<</if>>
<br>
[[Finish the princess|Adriana Princess Finale]]<<if not $princess_night.includes("glazed")>>
<<run $princess_night.push("back")>>
<p>You haul her off the arm of the couch, flip her onto her back on the white cushions and fold her legs up toward her shoulders, her gloved hands hooked behind her knees to hold them there. Her gape is right there looking up at you. You sink back into it and fuck her ass with her face in plain view, so you get to watch every expression that crosses it.</p>
<<video "img/adriana/anal_princess_27.mp4">>
<<speech "Adriana" "I can see my crown in the mirror. I look so fucking regal right now.">>
<<else>>
<<run $princess_night.push("back_glazed")>>
<p>You flip her again, legs up and gloves hooked behind her knees, only this time she's slick and white from her crack to the small of her back. Every stroke squelches. The fake cum squeezes out around your shaft and runs down onto the cushions, and she can't take her eyes off it.</p>
<<video "img/adriana/anal_princess_28.mp4">>
<<speech "Adriana" "It looks like a whole football team came in my fucking ass. I love it. Keep going.">>
<</if>>
<p>When you're done with that angle, you fold her back over the arm of the couch, head down and ass up.</p>
[[Back to Her Highness's ass|Adriana Princess Playground]]<<if not $princess_night.includes("glazed")>>
<<run $princess_night.push("pestle")>>
<p>You pick up the thick straight glass she saved for you. She stays folded over with her ass up, and you work it into her straight down from above and pump it in short, heavy strokes, up and down like you're grinding something in a mortar. She reaches back between her own legs, finds your cock and jerks you in time with it.</p>
<<video "img/adriana/anal_princess_24.mp4">>
<<speech "Adriana" "Scepter goes in, scepter comes out. I'm the one holding the royal cock, though, so who's really in charge?">>
<<else>>
<<run $princess_night.push("pestle_glazed")>>
<p>The straight glass again, straight down into her from above, but now every stroke pushes white lube back up around it. It spills over her crack and runs down her belly, and with her head lower than her ass, some of it makes it all the way to her mouth. You rub her pussy with your free hand while you pump, and she comes again with fake cum on her lips.</p>
<<video "img/adriana/anal_princess_26.mp4">>
<<speech "Adriana" "It's in my mouth. It's actually in my mouth. Do not stop.">>
<</if>>
[[Back to Her Highness's ass|Adriana Princess Playground]]<<if not $princess_night.includes("glazed")>>
<<run $princess_night.push("jewels")>>
<p>You push two of the balls back into her ass, and they go in easily now. She looks back at you over her shoulder.</p>
<<speech "Adriana" "Put the tip in too. Just the tip, with them still inside.">>
<p>There isn't room for more than the head of your cock, so that's all you give her, working it in and out in short strokes and feeling both balls roll and shift inside her every time. After about a minute it's too much for her, and she comes squeezing down on the tip of your dick with two plastic balls still in her ass.</p>
<<video "img/adriana/anal_princess_29.mp4">>
<<else>>
<<run $princess_night.push("jewels_glazed")>>
<p>Two balls go into her glazed ass with a wet little pop each. You push her head down into the cushions, rub her pussy and tell her to push. The first ball comes out riding a thick gush of white lube, the second follows with even more, and the moment her ass is empty she starts squirting all over the couch.</p>
<<video "img/adriana/anal_princess_23.mp4">>
<<speech "Adriana" "Did I just lay eggs and squirt? I think I just laid eggs and squirted.">>
<</if>>
[[Back to Her Highness's ass|Adriana Princess Playground]]<<if not $princess_night.includes("glazed")>><<run $princess_night.push("glazed")>><</if>>
<p>You uncap the first bottle of thick white lube. Adriana holds her cheeks open with both gloved hands, and instead of squeezing it onto anything, you push the whole nozzle of the bottle straight into her gape and squeeze.</p>
<p>It goes in cold and heavy. She gasps, then moans, and you keep squeezing until the bottle is crumpled in your fist, her ass is full of the stuff, and some of it is already drooling back out around the nozzle and down toward her pussy.</p>
<<video "img/adriana/anal_princess_19.mp4">>
<<speech "Adriana" "Oh, that's so much. That's a whole bottle. I'm sloshing, daddy.">>
<p>From here on, everything is white.</p>
[[Back to Her Highness's ass|Adriana Princess Playground]]<<run $princess_night.push("ribbed")>>
<p>You take the ribbed glass she opened herself with earlier and work it back into her, stretching her a little more, then squeeze a long white rope of the thick lube down the shaft so the glass carries it inside her one ridge at a time.</p>
<<video "img/adriana/anal_princess_18.mp4">>
<p>Then you fuck her with it hard, every ridge popping in and out of her glazed hole, until she starts coming. She can't hold anything in when she does: a big load of white lube shoots out of her ass around the glass while her pussy squirts, and all of it splatters over the white couch.</p>
<<video "img/adriana/anal_princess_20.mp4">>
<<speech "Adriana" "I'm leaking from both holes at once. Ugh, best day of my life.">>
[[Back to Her Highness's ass|Adriana Princess Playground]]<<run $princess_night.push("feed")>>
<p>You squeeze a thick line of the white lube along your own shaft, base to tip, and use your cock to feed it to her: the head goes into her gape, you push, and the lube gets shoved up inside her ass along with your dick.</p>
<p>You pull out and smear what's left over her whole crotch, her lips and her crack and the backs of her thighs, and then you stop playing and just fuck her with it.</p>
<<video "img/adriana/anal_princess_25.mp4">>
<<speech "Adriana" "Yes, feed me. Feed the princess. More.">>
[[Back to Her Highness's ass|Adriana Princess Playground]]/* The finale runs as one page: Enema -> Tube -> Ending are included in that
order, each step optional and passing straight on when its item is missing. */
<p>She's shaking by now, knees wobbling on the cushion, and the crown has finally gone crooked enough that she's stopped fixing it. When you step back, her gape stays open on its own, a wet dark ring that isn't closing again tonight.</p>
<<speech "Adriana" "Okay. Okay. Finish me. Finish the princess before I pass out in my own dress.">>
<<include "Adriana Princess Enema">>/* Finale step 1, included by Adriana Princess Finale. Cum-lube only; without
it this hands straight on to the Tube step. */
<<if not setup.princess.has("cum_lube")>>
<<include "Adriana Princess Tube">>
<<else>>
<div id="enema-choice">
<<linkreplace "Give her the enema">>
<<run $princess_night.push("enema")>>
<<replace "#enema-output">>
<p>She reaches back with both gloved hands and pulls her gape open with her fingers, wider than it has any right to go, and you push a fresh bottle of the thick white lube into that bottomless hole and squeeze it empty. It feels like a liter goes in, and she moans through every second of it like you're filling her with something she's been starving for.</p>
<<video "img/adriana/anal_princess_31.mp4">>
<<speech "Adriana" "Oh fuck, it's so deep in me. You just gave a princess a lube enema.">>
<<include "Adriana Princess Tube">>
<</replace>>
<<replace "#enema-choice">><div class="choice-made"><em>"Give her the enema"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Straight to the finish">>
<<replace "#enema-output">><<include "Adriana Princess Tube">><</replace>>
<<replace "#enema-choice">><div class="choice-made"><em>"Straight to the finish"</em></div><</replace>>
<</linkreplace>>
</div>
<div id="enema-output"></div>
<</if>>/* Finale step 2: only with the tube, and only after the enema - both tube clips
show cum-lube. Otherwise this hands straight on to the Ending. */
<<if not (setup.princess.has("tube") && $princess_night.includes("enema"))>>
<<include "Adriana Princess Ending">>
<<else>>
<div id="tube-choice">
<<linkreplace "Hand her the tube">>
<<run $princess_night.push("tube")>>
<<replace "#tube-output">>
<p>You feed one end of Earl's tap line into her gape and hand her the other. She puts it in her mouth without being asked twice, looks up at you through the smeared mascara and talks around it.</p>
<<speech "Adriana" "Yeah. Make me drink my own fucking ass juice.">>
<p>She sucks. For a while nothing happens except her cheeks hollowing and her eyes watering, and she keeps at it anyway, as stubborn about this as she is about everything else.</p>
<<video "img/adriana/anal_princess_32.mp4">>
<p>Then the tube fills. A white column creeps up the clear plastic from somewhere deep in her ass, and all at once her mouth is full of it. She holds it there to show you. When she lets the tube slip out, she gives one last push on her own and unloads a big thick load of fake cum out of her ass onto the cushions.</p>
<<video "img/adriana/anal_princess_34.mp4">>
<<include "Adriana Princess Ending">>
<</replace>>
<<replace "#tube-choice">><div class="choice-made"><em>"Hand her the tube"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Let her hold it in">>
<<replace "#tube-output">><<include "Adriana Princess Ending">><</replace>>
<<replace "#tube-choice">><div class="choice-made"><em>"Let her hold it in"</em></div><</replace>>
<</linkreplace>>
</div>
<div id="tube-output"></div>
<</if>>/* Shared tail of the night, included by the Tube step. Closes her ladder. */
<<set _messy = $princess_night.includes("glazed") || $princess_night.includes("enema")>>
<p>You pull her off the arm of the couch, roll her onto her back and fold her all the way over, knees by her ears and ass pointing at the ceiling, and drop straight down into her in a piledriver. Every stroke goes to the bottom<<if _messy>> and squeezes out another spurt of white<</if>>. You come a little inside her, then pull out and shove your cock into her waiting mouth for the rest, and she swallows it<<if _messy>>, your load mixed in with the fake stuff she's been tasting all night<<else>> straight from her ass<</if>>.</p>
<<video "img/adriana/anal_princess_36.mp4">>
<p>When you let her unfold she stays on her back with her legs spread and shows off the result like a trophy: a massive gape that she stretches even wider with her fingers. Then she pushes, and her hole blooms out into a rosebud glazed with <<if _messy>>your cum and the fake stuff<<else>>your cum<</if>>.</p>
<<video "img/adriana/anal_princess_37.mp4">>
<<speech "Adriana" "Look at it. Look at what you did to my royal asshole.">>
<p>The crown is crooked and sticky and one of the gloves is ruined, but she hasn't taken the crown off once all night, and she doesn't now.</p>
<<if $princess_night.includes("worship")>>
<<speech "Adriana" "You knelt for me tonight. Nobody's ever knelt for me. So, by royal decree: that was my last hole, and it belongs to you now.">>
<<else>>
<<speech "Adriana" "You didn't kneel once, you bastard, and I still came like six times. So, by royal decree: that was my last hole, and it belongs to you now.">>
<</if>>
<<speech "You" "Yes, Your Highness.">>
<<speech "Adriana" "Now carry me to the shower. Princesses don't walk after this.">>
<<statchange "respect" 2>>
<<set $hacker_level = 9>>
[[Back to the lair|Hacker]]<<album "img/general/bar_" 2 "jpg" "location">>
<<if visited() == 1>>
<div class="text">The neon-green bar down the street reeks of beer and piss. Lights are dim, and all surfaces are disgustingly sticky. Despite apparent neglect, it seems there are always at least a handful of patrons sipping their drinks in an effort to forget about the outside world.</div>
<<pic "img/bar/earl_fullbody.jpg" "story">>
<div class="text">Behind the counter stands the same heavyset man who has probably been polishing the same glass since before the wall went up. The regulars call him Earl. He waters the whiskey, keeps a bat under the register, and remembers everything anyone has ever said in this room. In a neighborhood with no lawyer and no priest anyone trusts, Earl is both.</div>
<<else>>
<p>The bar greets you with its usual perfume of beer and piss. Earl gives you the flat once-over he gives everyone, the neon flickers, and somewhere in the back a jukebox plays a song older than the wall.</p>
<</if>>
<<nobr>>
<<if $day > $bar_last_day>>
<<if $energy >= 2>>
<<if $bartender_stage == 3>>
<<linkreplace "Work the room (on the house)">>
<<set $bar_last_day = $day>>
<<statchange "energy" -2>>
<p>Earl slides one across before you reach the counter and waves off your money like it's an insult. Your credit is good here now. Around here that's worth more than the drink.</p>
<<include "BarRoomEvents">>
<</linkreplace>><br>
<<elseif $money >= 5>>
<<linkreplace "Work the room ($5)">>
<<set $bar_last_day = $day>>
<<statchange "energy" -2>>
<<statchange "money" -5>>
<<include "BarRoomEvents">>
<</linkreplace>><br>
<<else>>
<div class="req">Working the room starts with buying a round. (a round costs $5)</div>
<</if>>
<<else>>
<div class="req">Faces blur, names slide off. You're too worn out to work the room tonight. (2 energy needed)</div>
<</if>>
<<else>>
<div class="req">You've already made your rounds today. The bar has a memory, and so does its patience.</div>
<</if>>
<<if $bartender_stage == 2 && $physical >= 50>>
<<linkreplace "Help Earl with the problem at the corner booth">>
<p>The problem is two hundred and forty pounds of connected drunk who hasn't paid since Tuesday and has started explaining, loudly, whose cousin he is. Earl catches your eye and tips his head a quarter inch, which from Earl is a formal written request.</p>
<p>You walk over, lean in close, and have a short conversation consisting mostly of geometry - where his arm is, where the door is, where his cousin isn't. He does the math and leaves vertical. The room pretends it saw nothing, which means everyone saw everything.</p>
<<statchange "respect" 3>>
<<statchange "heat" 2>>
<<set $bartender_stage = 3>>
<<speech "Earl" "That man's people run half the towing rackets on the east side, and you moved him like furniture. Your money's no good here anymore. And the back table plays dice after ten, if you've got the stomach for it.">>
<</linkreplace>><br>
<<elseif $bartender_stage == 2>>
<div class="req">Earl keeps glancing at the corner booth like it owes him money. He could use a hand with something, but you'd need to be able to back it up. (50 physical)</div>
<<elseif $bartender_stage == 1>>
<div class="req">Earl's been shorthanded lately. Keep showing your face - a bar like this only trusts a face it's tired of seeing.</div>
<</if>>
<<if $bartender_stage == 3>>
<<if $day > $bar_dice_day>>
<<linkreplace "Buy into the back-table dice game ($20)">>
<<if $money >= 20>>
<<set $bar_dice_day = $day>>
<<statchange "money" -20>>
<p>The back table lives behind a curtain that used to be a tablecloth. Four players, a cigar box bank, and house rules older than anyone at the table.</p>
<<set _dice = random(1, 100)>>
<<if _dice <= 40>>
<<statchange "money" 45>>
<p>The dice like you tonight. You ride a hot streak just long enough to quit before it turns - the only real skill the game has. The cigar box pays out with poor grace.</p>
<<elseif _dice <= 70>>
<p>The dice are honest, which is the problem. Your twenty migrates across the table in four polite installments while an old man in a transit jacket takes your money without even seeming to enjoy it.</p>
<<elseif _dice <= 90>>
<<statchange "money" 70>>
<<statchange "heat" 2>>
<p>You clean out the table, including a wiry man with prison ink who takes losing the way some men take a diagnosis. He settles up, but on his way out he talks to somebody on the corner and points back at the bar. Word of your luck travels, and not all of it to friendly ears.</p>
<<else>>
<p>Halfway through the night the game acquires a spectator: a dancer from Club Babylon, still in her makeup, off shift and out of cash. She watches two rounds, then slides into the seat across from you and puts nothing on the table.</p>
<<speech "Stripper" "I'm light. But I'll cover the bet another way - you win, we take a walk to the ladies' room and you get twenty dollars' worth of my very best work. I win, you cover my buy-in. Deal?" "default_female">>
<div id="dice-choice">
<<linkreplace "Take the bet">>
<<replace "#dice-output">>
<p>You win. She's a good loser - takes your hand and walks you past Earl, who studies the ceiling with great professional interest. The ladies' room lock is broken, so she braces a boot against the door, wastes no time and no words, and drops to her knees on a folded coat with the efficiency of a woman who dances for money and negotiates for a living.</p>
<<video "img/bar/stripper_restroom_bj.webm">>
<p>She spits, checks her makeup in the cracked mirror, and pats your cheek on the way out. "Better than Babylon," she says, "at least you tipped with your luck." Twenty dollars' worth was underselling it.</p>
<</replace>>
<<replace "#dice-choice">><</replace>>
<</linkreplace>><br>
<<linkreplace "Keep it cash only">>
<<replace "#dice-output">>
<<statchange "money" 20>>
<p>"Cash game," you say, and mean it. She shrugs, unbothered - it was a business offer, not a compliment - and the old man in the transit jacket covers her buy-in instead. She loses it in three rounds and you take a slice of it on your way out. The table respects a man who keeps the game simple.</p>
<</replace>>
<<replace "#dice-choice">><</replace>>
<</linkreplace>>
</div>
<div id="dice-output"></div>
<</if>>
<<else>><p>The back table plays for real money, and twenty is the ante. Come back heavier.</p><</if>>
<</linkreplace>><br>
<<else>>
<div class="req">The back table has seen enough of you for one night. The dice will still be crooked tomorrow.</div>
<</if>>
<</if>>
<<if $ella_stage ==7>>
<p>Is that Ella you see? Back at her favorite high chair, it seems she returned to the drunk state you've met her the first time. <<link "Approach Ella" "Ella Hughes">>
<<set $ella_stage to 8>>
<</link>></p>
<</if>>
<<if $community_quest > 1 && $community_quest < 4 && $ella_stage == 1>>
<p>You notice Ella in her familiar place - only this time, she has been drowning her sorrows for much longer than usual. [[Approach her|Ella Hughes]]</p>
<</if>>
<<if $community_quest == 0 && visited() != 1>>
<<pic "img/ella/ella_smoking.jpg" "story">>
<p>Sitting on the high bar chair, one visitor looks foreign in a place like this. A young, attractive redhead who looks too good to be in this shit hole sips her beer and enjoys her cigarette, protected from advances by an aura of deep sadness emitting from her. You're no stranger to that, so why not approach her? Meet [[Ella|Ella Hughes]].</p><</if>>
<<if $ella_stage == 12 && $william_stage == 6 && $pollock_stage >= 4>>
<p>Ella's high chair at the end of the counter has sat empty since the night downtown. Earl says she hasn't been in.</p>
<<if $energy >= 3>>[[Check on her at her flat|Ella After Vegas]]<br><<else>><div class="req">You need 3 energy to go and see her.</div><</if>>
<</if>>
<<if $respect >= 20 && $gloryhole_ulocked == 0>>
[[Ask bartender about the backrooms|Gloryhole]]<br>
<<elseif $gloryhole_ulocked == 1 && $hacker_gh_stage == 1>>
[[Adriana gloryhole]]<br>
<<elseif $gloryhole_ulocked == 1 && $energy >= 2>>
[[Gloryhole]]<br>
<<elseif $gloryhole_ulocked == 1>>
<div class="req">The booth takes more out of you than you've got left tonight. (2 energy needed)</div>
<<else>><div class="req">There's a door behind the bar that regulars pretend not to see. Earl won't tell a stranger what's back there, and right now that's what you are. (20 respect, you have $respect.)</div><</if>>
<<if $ella_stage == 9 && $day < $ella_next_day>><div class="req">You told Ella you'd meet her here tomorrow - and she's not the type to appreciate you jumping the gun.</div><br><<elseif $ella_stage == 9 && $money >=50 && $respect >=60>>[[Go on a date with Ella|EllaDate_1]]<br><<elseif $ella_stage == 9>><div class="req">You need $50 and 60 respect for Ella's date.</div><</if>>
/* CUT: brothel is not going into the next release.
<<if $brothel_unlocked == 0>>
<<if $respect >= 40>>
<<linkreplace "Ask the bartender about the working girls ($20)">>
<<if $money >= 20>>
<<statchange "money" -20>>
<p>The bartender polishes the same glass for a long moment, deciding what you're worth. The twenty helps him decide.</p>
<<speech "Earl" "Basement under the dead laundromat, end of the block. Man named Dre. Careful with him - he sells the neighborhood's daughters to the people who built the wall, and sleeps fine. But he pays serious men serious money. Knock twice.">>
<<set $brothel_unlocked = 1>>
<<else>><p>The bartender's memory works on a strict cash basis, and you're $20 short of a recollection.</p><</if>>
<</linkreplace>><br>
<</if>>
<</if>>
*/
<<if $hacker_level == 8 && not setup.princess.ordered("tube")>>
<<linkreplace "Ask Earl for a length of tap line">>
<<if $bartender_stage >= 1 || $money >= 5>>
<p>Earl has the cooler panel off and the old beer lines coiled on the counter like something he gutted, and he's feeding new line through the taps one at a time. You ask for a length of the clear stuff. He cuts it before you finish the sentence, then keeps hold of his end.</p>
<<speech "Earl" "Food grade. What's it for?">>
<<speech "You" "Fish tank.">>
<<speech "Earl" "You don't have a fish.">>
<<speech "You" "Not yet.">>
<p>He lets go of the tube and goes back to his taps. Earl remembers everything anyone has ever said in this room, and you can watch him decide to forget this one.</p>
<<if $bartender_stage >= 1>>
<p>He waves your money off before you reach for it.</p>
<<else>>
<p>You buy a round for the privilege, and the five goes into his apron without him looking at it.</p>
<<statchange "money" -5>>
<</if>>
<<set $princess_kit.tube = $day>>
<div class="req">A coil of clear tubing is in your pocket.</div>
<<else>>
<div class="req">Earl doesn't cut tubing for strangers who can't cover a round. ($5 needed)</div>
<</if>>
<</linkreplace>><br>
<</if>>
<<if $ella_end_quest == 1 && $ella_end_bar == 0>><<linkreplace "[Ella]Rob the bar">>The owner keeps cash in the safe but leaves some overnight in the cash register and office. You break in at night and gather what little you can find. <<set $ella_end_bar = 1>><</linkreplace>><br><</if>>
<<if $school_unlocked == 3 && $school_intro_location == "bar">>[[Meet with Jamal|SchoolIntro]]<br><</if>>
<<if $william_stage == 1 && $day >= $william_next_day>>An expensive coat hangs over the corner booth. Beneath it, William sits at the sticky table he promised he would visit, grinning at the room like it is a war trophy.<br>[[Join him|William Drinks]]<br><</if>>
[[Go out|The Hood]]
<</nobr>><<nobr>>
<<set _bar = random(1, 100)>>
<<if _bar <= 10>>
<p>The domino table by the window has been running the same game since the Nixon administration, and tonight there's an open chair. You buy the round, lose gracefully, and listen. Between slams of the tiles you get the neighborhood's real newspaper: who got picked up at the checkpoint, whose boy came home, which landlord is selling to the people beyond the wall. </p>
<<statchange "respect" 3>>
<<elseif _bar <= 20>>
<<if $bartender_stage == 0>>
<p>A slow stretch at the counter. Earl works his way down the bar and ends up across from you, glass and rag in hand.</p>
<<speech "Earl" "You're new here. What do they call you when they're not calling you trouble?">>
<p>You give him some fake-ass name, the first one that comes to mind. Earl files it away behind those flat eyes without blinking. Man's tended bar in this neighborhood long enough to know a bought name when he hears one, and to not care. Your next beer arrives a shade less watered than the last.</p>
<<set $bartender_stage = 1>>
<<elseif $bartender_stage == 1>>
<p>Your glass is empty for exactly four seconds before a fresh one lands in front of you, your usual, unasked. Earl doesn't say anything about it, but you just got promoted in his eyes to a regular.</p>
<<set $bartender_stage = 2>>
<<else>>
<p>Earl leans in while pulling your beer, voice pitched under the jukebox.</p>
<<speech "Earl" "Word to the wise - patrols are working the blocks by the laundromat this week. Somebody downtown wants numbers before the quarter ends. Keep your business on the other end of the neighborhood.">>
<<if $heat > 0>><<statchange "heat" -5>><</if>>
<</if>>
<<elseif _bar <= 28>>
<<switch random(1, 3)>>
<<case 1>>
<p>Nobody bites tonight. You drink alone under the dying neon while the rain draws bars down the front window, which feels a little on the nose. Even the jukebox plays to itself.</p>
<<case 2>>
<p>The room is all closed circles tonight - grief in one booth, business in another, and no seat at either.</p>
<<case 3>>
<p>You catch your own reflection behind the bottles: a man on the neverending run. You toast him. He toasts back.</p>
<</switch>>
<<elseif _bar <= 36>>
<p>It starts at the pool table, the way it always does: a doubled bet, a slow reracking, two voices dropping into that register men use right before furniture gets involved. Then a cue clatters and the argument comes to you, whether you want it or not.</p>
<div class="req">Physical check of 55...</div>
<<if $physical >= 55>>
<p>You put the loud one against the cigarette machine before he finishes his swing, hold him there while the fight leaks out of him, and set him back down like a returned drink. The bar exhales. Earl's bat goes back under the register, unused, and somebody you've never met sends a beer down the rail to your elbow.</p>
<<statchange "respect" 5>>
<<statchange "heat" 2>>
<<else>>
<p>You get between them and mostly succeed, if you don't count the bottle that clips your ear on its way past. The fight dies, the room settles, and you spend the rest of the night pressing bar ice wrapped in a rag to the side of your head.</p>
<<statchange "physical" -5>>
<<statchange "heat" 2>>
<</if>>
<<elseif _bar <= 44>>
<p>A stranger in a good coat - too good for this room - sets three bottle caps on the bar and starts moving them with the easy patter of a man who's done this in a hundred bars just like yours. "Simple game," he says. "Eyes against hands. Ten says you can't follow the cap."</p>
/* Straight 35% roll - the shell game is a con, so the house usually wins */
<<if random(1, 100) <= 35>>
<p>Halfway through the shuffle his little finger does something it shouldn't, and the whole trick comes apart in front of you: the cap was palmed before the first pass, and the game was over before it started. So you bet on the empty one, name the move out loud, and watch his patter die. He pays the ten with a professional's grace and moves on to a softer room. The regulars saw the whole thing, and word gets around that you're nobody's mark.</p>
<<statchange "money" 10>>
<<statchange "respect" 2>>
<<else>>
<p>You follow the cap perfectly. That's the trick - there's nothing under any of them by the time he's done shuffling. Your ten disappears with the same sleight of hand, and you buy the lesson every mark buys: in this economy, even the crime is small business.</p>
<<statchange "money" -10>>
<<if $money < 0>><<set $money = 0>><</if>>
<</if>>
<<elseif _bar <= 52>>
<p>Three men in the corner booth are drinking like they're being paid to, which they are. Off-duty cops - you can tell by the haircuts, the way they sit facing the door, and the fact that nobody within two tables of them is speaking above a whisper.</p>
<<if $heat >= 40>>
<p>One of them looks up from his glass, and his eyes stop on you a beat too long. You've been on somebody's board recently, and his face says he's trying to remember which one.</p>
<div id="cops-choice">
<<if $money >= 15>>
<<linkreplace "Send their table a round ($15)">>
<<replace "#cops-output">>
<<statchange "money" -15>>
<<statchange "heat" -5>>
<p>Earl ferries three whiskeys over with your compliments. The one who was staring raises his glass a lazy inch - the neighborhood's oldest sacrament, the small bribe accepted. When they talk about tonight back at the precinct, you'll be "some local," not a face. Cheap at the price.</p>
<</replace>>
<<replace "#cops-choice">><</replace>>
<</linkreplace>><br>
<</if>>
<<linkreplace "Finish up and slip out">>
<<replace "#cops-output">>
<<statchange "heat" 1>>
<p>You drain the glass at a civilian's pace and take the long way past the jukebox to the door. Nobody follows. But in the window's reflection you see him lean over to his partner, and his mouth makes the shape of a question with your description in it.</p>
<</replace>>
<<replace "#cops-choice">><</replace>>
<</linkreplace>>
</div>
<div id="cops-output"></div>
<<else>>
<p>You keep your glass between you and their sightline and drink at the speed of a man with nothing on his conscience. They're not here for anybody tonight - just three tired uniforms out of uniform, drinking off the same city everyone else is. The tension at your table leaves with them.</p>
<</if>>
<<elseif _bar <= 60>>
<p>She's at the dark end of the bar with a drink she isn't drinking - whore-working clothes under a civilian coat, makeup half surrendered, the posture of a bad shift that ended early. When you settle nearby she looks you over with a professional's speed and a tired woman's honesty.</p>
/* CUT: brothel is not going into the next release - Dre variant of this line disabled.
<<if $brothel_unlocked == 1>>
<<speech "Working Girl" "I know you - you're around Dre's place. Good. Then you know the rules and I don't have to say a price out loud like an amateur. Tonight was ugly and I want to end it on something I chose. Bathroom's in the back. Coming?" "default_female">>
<<else>>
*/
<<speech "Working Girl" "You've got the look of a man whose night went as bad as mine. I do this for money, usually. Right now I'd settle for doing it on my own terms. Bathroom's in the back. Coming?" "default_female">>
/*
<</if>>
*/
<div id="girl-choice">
<<linkreplace "Follow her">>
<<replace "#girl-output">>
<p>The bathroom is one flickering bulb and a door that locks if you lean on it. She leans on it, pulls you in by the belt, and takes charge the way only a professional off the clock can - no performance, no clock running, just appetite with expert hands. She gets your cock out before your jacket's off, strokes you hard with a spit-slick fist, then turns and braces against the sink, skirt shoved up over her ass, watching you in the cracked mirror.</p>
<<video "img/bar/whore_restroom_doggy.webm">>
<p>You fuck her the way she tells you to - slow until she stops saying slow, then hard enough that the pipes knock and somebody in the bar turns the jukebox up out of courtesy. </p>
<<speech "Working Girl" "Better. You're all right, you know that? I'll say so, to people it counts with." "default_female">>
<<statchange "respect" 1>>
<</replace>>
<<replace "#girl-choice">><</replace>>
<</linkreplace>><br>
<<linkreplace "Decline politely">>
<<replace "#girl-output">>
<p>You tip your glass to her and stay on your stool. She shrugs - no offense taken where none was traded - finishes her drink in one economical motion, and leaves alone. Maybe that was the point all along.</p>
<</replace>>
<<replace "#girl-choice">><</replace>>
<</linkreplace>>
</div>
<div id="girl-output"></div>
<<elseif _bar <= 68>>
<p>She has the corner stool the way a general has a hill: mid-fifties, gold on every finger, drinking bourbon that Earl keeps under the bar just for her. Rumor says she owns some real estate outside the Hood and comes because the men there bore her. Tonight your glass keeps refilling and you're not the one paying.</p>
<<speech "Cougar" "Don't look so suspicious, sweetheart. At my age you learn to skip the part of the evening where we both pretend. I like them young, broke, and grateful, and you're at least two of the three. My car's out front and my building has an elevator. Well?" "default_female">>
<div id="cougar-choice">
<<linkreplace "Leave with her">>
<<replace "#cougar-output">>
<p>Her room is on the neighborhood's one good street, and she doesn't waste any of it on a tour. She takes what she paid all those drinks for - unhurried, exacting, riding you with her rings still on and her eyes open, correcting your pace like a woman conducting an orchestra she funds. She comes twice with total confidence, and by the end you've stopped being the one who thinks he's in charge. She finds that adorable.</p>
<<video "img/bar/cougar_night.webm">>
<p>After, she watches you dress with proprietary satisfaction and tucks folded bills into your jacket pocket without asking.</p>
<<speech "Cougar" "Cab money, sugar. Take the long way home - you've earned the scenery. And come drink at my end of the bar sometime. I tip better than the neighborhood does." "default_female">>
<<statchange "money" 15>>
<</replace>>
<<replace "#cougar-choice">><</replace>>
<</linkreplace>><br>
<<linkreplace "Decline">>
<<replace "#cougar-output">>
<p>You thank her for the drinks and stay put. She takes it like a market fluctuation - noted, unbothered, already scanning the room for the next investment.</p>
<</replace>>
<<replace "#cougar-choice">><</replace>>
<</linkreplace>>
</div>
<div id="cougar-output"></div>
<<elseif _bar <= 76>>
<p>The door bangs open and the nightclub spills in - or one glittering piece of it does: a party girl in a dress built for a different building, mascara gone abstract, phone dead, friends lost somewhere between Club Babylon's velvet rope and here. She surveys the bar, decides you're the least alarming thing in it, and when the jukebox turns over she's suddenly grinding against you like the night depends on it, all warm skin and spilled vodka and zero sense of geography.</p>
<div id="stray-choice">
<<linkreplace "Take it to the alley">>
<<replace "#stray-output">>
<p>She's the one who pulls you toward the back door, giggling into your neck. The alley is cold and she doesn't care - hikes the dress that barely needed hiking, hooks a heel on a crate, and pulls you into her with a gasp that echoes off the brick. It's fast and greedy and completely without dignity for either of you, her nails in your shoulders, your hand over her mouth when a patrol light sweeps the alley mouth and you both freeze mid-stroke, shaking with adrenaline and something dangerously close to laughter.</p>
<<video "img/bar/stray_alley.webm">>
<p>The light passes. You finish like fugitives. She kisses you once, badly, calls you a name that is definitely not yours, and totters off toward Babylon to find her friends.</p>
<<statchange "heat" 1>>
<</replace>>
<<replace "#stray-choice">><</replace>>
<</linkreplace>><br>
<<linkreplace "Pour her into a cab">>
<<replace "#stray-output">>
<p>You peel her off gently, park her on a stool, and have Earl call the one cab company that still crosses the wall. You feed her water until it arrives and tell the driver her stop like you're handing off cargo. Earl watches the whole operation and gives you the nod.</p>
<<statchange "respect" 4>>
<</replace>>
<<replace "#stray-choice">><</replace>>
<</linkreplace>>
</div>
<div id="stray-output"></div>
<<elseif _bar <= 84>>
<p>A birthday party has annexed the pool table - four women, one sash, and a body count of empty pitchers coupled with a birthday cake. The one in the sash is losing a dare negotiation with her friends, and losing it in your direction: strip stakes, one game of eight ball, and the whole bar is suddenly very invested in the sporting integrity of the occasion. She points her cue at you.</p>
<<speech "Birthday Girl" "You. You look like you can hold a cue straight. One game. I win, you're buying pitchers all night. You win... well, the girls already decided what I'm in for, and apparently it's you. No pressure." "default_female">>
<div class="req">Physical check of 40 or 40% chance...</div>
<<if $physical >= 40 || random(1, 100) <= 40>>
<p>You shoot a clean, mean game while her friends heckle both of you indiscriminately, and sink the eight with the whole bar watching. She pays up past the terms - drops to her knees behind a wall of her shrieking, cheering friends, and takes you in her mouth with the sloppy, laughing enthusiasm of a woman who is going to remember this birthday in fragments. The sash stays on, and the whipped cream for the birthday cake gets on your cock. Her friends narrate. Earl turns the jukebox up.</p>
<<video "img/bar/birthdaygirl.webm">>
<<statchange "respect" 2>>
<p>By closing time you're a minor local legend, and somebody has written the score on the chalkboard where the specials used to be.</p>
<<else>>
<p>You scratch on the eight ball like an amateur while the entire bar groans in unison. Her friends collect with glee: your ten dollars for the pitchers and, by a house amendment you never agreed to, your shirt, which the birthday girl wears out the door as a trophy. You drink the rest of your beer topless and dignified. Mostly dignified.</p>
<<statchange "money" -10>>
<</if>>
<<elseif _bar <= 92>>
<<if $ella_stage >= 5 && $ella_stage != 7>>
<p>A familiar shape at the end of the bar: Ella, at her old high chair, but different than the wreck you first met there - sitting straighter, drinking slower. She spots you before you decide whether to approach, which settles it, and pats the stool beside her.</p>
<<if $ella_stage >= 9>>
<<speech "Ella" "Of course it's you. It's just one beer I'm having, and you can keep me company.">>
<p>She's so relaxed around you now that she even strikes some poses, not minding the attention.</p>
<<else>>
<<speech "Ella" "Look who it is. Sit down before someone worse does. I'm having exactly one drink tonight, and you're going to witness it so I can prove it happened.">>
<p>She's making sure you can see her single drink - and her upskirt as a bonus.</p>
<</if>>
<<pic "img/ella/bar_random.jpg" "story">>
<p>Half the bar clocks that she knows you. Around here, being known by someone is the whole résumé.</p>
<<statchange "respect" 1>>
<<else>>
<p>The city feed cuts into the ballgame with breaking news: the checkpoint program is expanding, three new walls going up around three new neighborhoods, a state mouthpiece on a podium calling it "the model that works". The bar goes quiet. Earl reaches up without a word and changes the channel to static, and somehow the static is an improvement. Everyone drinks a little faster after that.</p>
<</if>>
<<else>>
<p>He's been in the corner booth all night - camel coat, two phones, the kind of man who visits the neighborhood but keeps the car running. Near midnight he takes a call, goes pale, and leaves practically running. It takes the booth ten minutes to stop radiating him. It takes you two to notice the envelope wedged behind the napkin dispenser: fat, sealed, and heavy.</p>
<div id="envelope-choice">
<<linkreplace "Pocket it">>
<<replace "#envelope-output">>
<<statchange "money" 40>>
<<statchange "heat" 5>>
<p>The envelope disappears into your jacket between one sip and the next. Forty dollars and no name on it - except money like this always has a name on it somewhere, and men in camel coats retrace their steps.</p>
<</replace>>
<<replace "#envelope-choice">><</replace>>
<</linkreplace>><br>
<<linkreplace "Hand it to Earl">>
<<replace "#envelope-output">>
<p>You slide it across the counter. Earl weighs it in one hand, and something almost expressive crosses his face - a man recalculating a ledger entry. He stows it under the register next to the bat.</p>
<<speech "Earl" "He'll be back for this tonight, sweating, and he'll remember whose bar didn't rob him. And I'll remember who handed it over when nobody was counting. That's worth more than what's in it, if you're planning on drinking here a while.">>
<<statchange "respect" 3>>
<<if $bartender_stage < 2>><<set $bartender_stage = 2>><</if>>
<</replace>>
<<replace "#envelope-choice">><</replace>>
<</linkreplace>>
</div>
<div id="envelope-output"></div>
<</if>>
<</nobr>>/* CUT: brothel arc is not going into the next release - whole passage commented out.
<!-- IMAGE: basement brothel - bare bulbs, couches against concrete, a pegboard of car keys, a man with a ledger -->
<<if visited() == 1>>
<div class="text">The stairs under the dead laundromat go down further than they should. At the bottom: a steel door, a peephole, and then a long concrete room dressed up with rugs and lamps that only make the concrete more honest. Girls wait on two couches with their coats on - coats on, because most of the work isn't here. It's out there, past the checkpoints, in hotel rooms and gated houses where the wall is something you order delivery from.</div>
<div class="text">The man with the ledger is called Dre. Gold ring, dead eyes, arithmetic where his sentiment should be. He doesn't shake hands.</div>
<<speech "Dre" "I know who you are, and I don't care. Here's what I care about: product goes out clean, product comes back safe, clients pay invisible. The girls are mine to worry about, not yours. We clear?">>
<div class="text">Product. He means the women sitting ten feet away, close enough to hear. One of them - young, sharp-eyed, a paperback folded open on her knee - watches you take the word in, and you understand she's watching to see whether it lands. You keep your face still. Everyone here keeps their face still. That's what the place runs on.</div>
<<else>>
<p>The basement is the same at any hour - bare bulbs, coats on the couches, Dre's pen scratching in the ledger. The sharp-eyed girl with the paperback marks her page when you come in, the way other people check a clock.</p>
<</if>>
<<nobr>>
($brothel_stage: 0 local runs, 1 outside runs unlocked, 2 Dre's car earned. Future arc: the girls, and the question of taking Dre's operation down or over.)
<<if $brothel_stage == 0 && $escort_runs >= 5 && $respect >= 50>>
<p>Dre's pen stops scratching when you come in. He looks at you the way he looks at a column that finally adds up.</p>
<<linkreplace "See what he wants">>
<<speech "Dre" "Five runs. You wait with the engine on, and the girls come back. That's rarer than you'd think - most drivers think the job is the driving.">>
<p>He turns the ledger around. The addresses on the new page aren't in the hood - gated communities, serviced towers, places with fountains. Outside money, outside distances, outside risk.</p>
<<speech "Dre" "Outside runs pay outside rates. The checkpoints know my girls travel - that arrangement costs me monthly, so don't test it with a hot face. Product goes out clean, product comes back safe. Same rules, longer road.">>
<<set $brothel_stage = 1>>
<div class="req">Outside runs unlocked - richer clients, richer pay, more heat.</div>
<</linkreplace>><br>
<</if>>
<<if $brothel_stage == 1 && $escort_runs >= 12>>
<p>Tonight there's a set of car keys sitting on the ledger, and Dre's finger is holding them down like a paperweight holding down a decision.</p>
<<linkreplace "Ask about the keys">>
<<if $escort_intimacy >= 2>>
<p>The reader is on the couch, paperback closed for once. She looks up at Dre and says, to the room in general, "He's the one the girls ask for." Dre studies her, then you, and does his math.</p>
<<else>>
<p>Dre studies you for a long moment. Twelve runs. Girls out, girls back, invoices clean.</p>
<</if>>
<<speech "Dre" "Gray sedan behind the laundromat. Registered to a laundry service that hasn't washed a sheet since before the wall. The blockpost knows the car - they know exactly why it leaves the hood every night, and they are paid, monthly, to know nothing else. You drive it now.">>
<p>He slides the keys across the ledger, then puts one finger back on them, briefly.</p>
<<speech "Dre" "Understand the physics. The car passes because it's mine and the arrangement is mine. You bring militia attention onto my plates, the keys come home and you walk like everybody else. And sometimes the car works for me even when you're holding the wheel. We clear?">>
<p>Clear. In this neighborhood even freedom comes with a ledger entry.</p>
<<set $brothel_stage = 2>>
<<set $escort_car = 1>>
<div class="req">You have the use of Dre's sedan. The blockpost waves it through. "Drive out of the hood" is now available on the street, and the bus is optional.</div>
<</linkreplace>><br>
<</if>>
<<if $respect >= 50>>
<<if $energy >= 4>>
<<linkreplace "Take an escort run">>
<<statchange "energy" -4>>
<<statchange "heat" 5>>
<<set $escort_runs += 1>>
<<set _run = random(1, 100)>>
<<if _run <= 40>>
<<statchange "money" 35>>
<p>Tonight it's the reader. She gives the client's address like a weather report and reads at every red light - the paperback rides in her coat pocket the way other people carry a knife. The client is a house with a gate; business is prompt; the ride back is quiet. At the drop she peels a ten off her own roll and hands it over without looking at you.</p>
<<speech "Working Girl" "You waited with the engine on. The last driver didn't. That's the whole review.">>
<<statchange "money" 10>>
<<elseif _run <= 70>>
<<statchange "money" 35>>
<p>The checkpoint takes longer than it should. A militiaman circles the car, taps the glass, and asks what a man like you is doing driving a girl like her toward a neighborhood like that. His flashlight has already found her coat, her heels, the answer.</p>
<<set _cpChoiceMade = false>>
<div id="cp-choice">
<<if $money >= 10>>
<<linkreplace "Fold a bill into your papers ($10)">>
<<replace "#cp-output">>
<p>Your documents come back lighter and the barrier goes up. The oldest toll road in the world. She exhales through her nose, and you realize she'd been holding that breath since the flashlight came on.</p>
<<statchange "money" -10>>
<</replace>>
<<replace "#cp-choice">><</replace>>
<</linkreplace>><br>
<</if>>
<<linkreplace "Play it straight">>
<<replace "#cp-output">>
<p>You hand over papers and let the silence do the work. It costs twenty minutes, a call to someone's sergeant, and your plate number going into a notebook next to a note about the passenger. They wave you through eventually - but you're a name on a page now, attached to Dre's business.</p>
<<statchange "heat" 8>>
<</replace>>
<<replace "#cp-choice">><</replace>>
<</linkreplace>>
</div>
<div id="cp-output"></div>
<<else>>
<p>The client is a serviced apartment downtown, all glass and no neighbors. You wait in the car the way the job says. Eleven minutes in, something comes through the ceiling of the parking garage - a sound with her voice in it, then furniture, then her voice again, wrong.</p>
<<set _roughChoiceMade = false>>
<div id="rough-choice">
<<linkreplace "Go through the door">>
<<replace "#rough-output">>
<p>The apartment door is a rich man's door, which means it's decorative. You come through it on the second kick. The client is fifty, soft, and standing over her with his belt wrapped around his fist - for the money he's paying, he explains, he decides what the evening includes. You explain otherwise, briefly, in the language he suddenly speaks fluently. She's dressed and in the car in ninety seconds, holding your jacket sleeve at the wrist - not the hand, the sleeve - the whole way home.</p>
<p>Dre docks you for the door, the client, the noise. He'd have docked the client nothing.</p>
<<statchange "heat" 10>>
<<statchange "respect" 8>>
<<statchange "money" 20>>
<div class="statchange">(Your pay, docked $15 for the trouble.)</div>
<</replace>>
<<replace "#rough-choice">><</replace>>
<</linkreplace>><br>
<<linkreplace "Wait in the car. It's the job.">>
<<replace "#rough-output">>
<p>You're paid to drive and to make sure she comes back - nothing in the arrangement covers what happens between the lobby and the return. You sit with both hands on the wheel. The sounds stop eventually. When she comes down she's walking carefully and her face is fixed for the checkpoint cameras, and she doesn't say a word to you, that night or ever again.</p>
<<statchange "money" 35>>
<</replace>>
<<replace "#rough-choice">><</replace>>
<</linkreplace>>
</div>
<div id="rough-output"></div>
<</if>>
<</linkreplace>><br>
<<if $brothel_stage >= 1>>
<<linkreplace "Take an outside run">>
<<statchange "energy" -4>>
<<statchange "heat" 8>>
<<set $escort_runs += 1>>
<<set _pay = 55>>
<<if random(1, 100) <= 20>>
<p>Twenty minutes into the drive, somewhere in the dead zone between the wall and the money, she reaches over and puts a hand flat on your thigh. "Long queue at the checkpoint tonight," she says, which is true, and also not what she means.</p>
<<if random(1, 2) == 1>>
<!-- VIDEO: car - road head in the checkpoint queue, dashboard light -->
<p>She goes down on you in the checkpoint queue with the handbrake digging into her ribs, unhurried, her mouth working you in the dashboard light while brake lights crawl forward ahead. You come two cars before the barrier and she sits up, checks her lipstick in the visor mirror, and hands the militiaman her papers with a face like a church portrait.</p>
<<else>>
<!-- VIDEO: car - pulled over under the wall, fucking in the back seat, dark -->
<p>You pull off under the shadow of the wall itself and she climbs over the seat, hikes her working dress, and rides you in the back of Dre's route car, fast and greedy and entirely for herself this time - the client gets the performance, you get the appetite. She comes with her hand braced on the cold window glass, leaving a print in the fog like evidence.</p>
<</if>>
<p>The timestamps run late. Dre's arithmetic notices everything.</p>
<<set _pay -= 10>>
<<statchange "heat" 3>>
<<set $escort_intimacy += 1>>
<div class="statchange">(Pay docked $10 for the timeline. Something else was earned, though.)</div>
<</if>>
<<set _outrun = random(1, 100)>>
<<if _outrun <= 40>>
<p>The client is a gated community with a name like a golf course. At the guardhouse, the client's name opens the barrier but the guard wants the driver on camera, face and plate. The girl leans across you and charms the lens down to a formality - she's done this door before. The client tips like a man buying silence in bulk, because he is.</p>
<<set _pay += 15>>
<<elseif _outrun <= 70>>
<p>Tonight it's the reader, and it's her downtown regular - a tower apartment where the doorman knows her coat. She reads in the passenger seat the whole way, one finger holding her page at the checkpoint. On the ride back she is quiet in a different key, counting her roll twice.</p>
<<speech "Working Girl" "He asks for me because I don't pretend. You wait with the engine on because you don't either. Between the two of you, a girl could almost respect this job.">>
<<set _pay += 5>>
<<else>>
<p>At the pickup, Dre himself comes down and puts a wrapped package on the passenger seat before the girl gets in. Nobody says what it is. The girl looks out her window the whole ride like the package is contagious. At the drop, a man you never see clearly takes it and holds out a folded bill toward you - a tip that isn't from the client.</p>
<<set _pkgChoiceMade = false>>
<div id="pkg-choice">
<<linkreplace "Take the extra ($20)">>
<<replace "#pkg-output">>
<p>You pocket it. Now you're not a driver who once carried a package - you're a courier who also drives. The distinction will matter someday, to a prosecutor.</p>
<<statchange "money" 20>>
<<statchange "heat" 5>>
<</replace>>
<<replace "#pkg-choice">><</replace>>
<</linkreplace>><br>
<<linkreplace "Wave it off">>
<<replace "#pkg-output">>
<p>You keep both hands on the wheel and let the bill hang in the air until it goes away. The girl exhales. On the ride home she talks to you like a person, which around here is its own kind of payment.</p>
<</replace>>
<<replace "#pkg-choice">><</replace>>
<</linkreplace>>
</div>
<div id="pkg-output"></div>
<</if>>
<<statchange "money" _pay>>
<</linkreplace>><br>
<</if>>
<<else>>
<div class="req">Escort runs go all night. You don't have the energy. (4 needed)</div>
<</if>>
<<else>>
<div class="req">Dre doesn't put unknown men next to his income. (50 respect for escort work)</div>
<</if>>
<<if $money >= 30>>
<<linkreplace "Take a room here ($30)">>
<<statchange "money" -30>>
<<statchange "energy" -2>>
<<statchange "heat" 3>>
<p>Dre takes the bills without counting them - he counted them from across the room - and tips his pen toward the hallway.</p>
[[Down the hall|Brothel Room]]
<</linkreplace>><br>
<<else>>
<div class="req">A room costs $30. Dre's arithmetic makes no exceptions.</div>
<</if>>
<div class="req">The girls Dre saves for his downtown clientele aren't offered here. Not to the neighborhood. (Premium content in a future update.)</div>
[[Climb back up to the street|The Hood]]
<</nobr>>
*//* CUT: brothel arc is not going into the next release - whole passage commented out.
<p>The room at the end of the hall has a bed, a lamp with a scarf over it, and a concrete ceiling nobody bothered to paint. The girl who follows you in is not the reader - Dre keeps her for the outside money - but a tired-eyed local girl who hangs her coat on the nail like she's clocking in, because she is.</p>
<<speech "Working Girl" "Half hour. Anything past regular is extra, and you settle extras with Dre, not me. Okay? Okay.">>
<p>It's transactional and neither of you pretends otherwise - down here, pretending costs extra too. But her hands are warm and her mouth is skilled, and when she works your zipper open and takes the measure of you, the boredom in her eyes gives way to something at least resembling professional interest.</p>
<!-- VIDEO: brothel scene - blowjob, dim basement room -->
<p>She spits in her palm and works you with the efficiency of long practice, mouth and hand trading off without a wasted motion. There's no affection in it, just craft - but the craft is good.</p>
<!-- VIDEO: brothel scene - sex, girl on top -->
<p>She rides you with her eyes half-closed, chasing the clock rather than a feeling, hips grinding out the minutes. Whatever she's thinking about, it isn't in this room - but her body knows its work, and it wrings yours out thoroughly and without mercy.</p>
<!-- VIDEO: brothel scene - finish -->
<p>You finish; she's dressed before your pulse settles, coat off the nail, already gone in every way but the physical. In the doorway she pauses.</p>
<<speech "Working Girl" "You didn't try anything extra without paying. Genuinely, thanks. You'd be surprised.">>
<p>You wouldn't be, though. That's the thing about this place. Nothing down here surprises you anymore.</p>
[[Back to the front room|Brothel]]
*//* CUT: brothel arc (Dre's sedan) is not going into the next release - whole passage commented out.
<!-- IMAGE: the road out - blockpost barrier rising for a gray sedan, city skyline beyond the wall -->
<<nobr>>
<<if $escort_car != 1 or $day < $car_suspended>><<goto "The Hood">><</if>>
<<set _favor = (random(1, 100) <= 15)>>
<<set _searched = ($heat >= 60) && (random(1, 100) <= 25)>>
<</nobr>>
<<if _favor>>
<p>The sedan is where you left it behind the laundromat - but Dre is leaning on the hood, ledger under his arm, in no hurry at all. Men like him never are; the numbers come to them.</p>
<<speech "Dre" "Good timing. There's an envelope under your seat and an address in the glovebox. It rides along tonight. The car works for me - sometimes, so do you.">>
<<set _favorChoiceMade = false>>
<div id="favor-choice">
<<linkreplace "Make the drop">>
<<replace "#favor-output">>
<p>Forty minutes out of your night, an address with no name, a hand through a cracked door taking the envelope without a word. You don't ask. Not asking is the entire job description.</p>
<<statchange "energy" -2>>
<<statchange "heat" 3>>
<</replace>>
<<replace "#favor-choice">><</replace>>
<</linkreplace>><br>
<<linkreplace "Not tonight">>
<<replace "#favor-output">>
<p>Dre doesn't argue. He holds out his palm, and you put the keys in it, and he walks back down into the basement without another word. The lesson costs three days of walking: the car was never a gift, it was a salary - and salaries get docked.</p>
<<set $car_suspended = $day + 3>>
<div class="req">Dre took the keys back until day $car_suspended.</div>
<</replace>>
<<replace "#favor-choice">><</replace>>
<</linkreplace>>
</div>
<div id="favor-output"></div>
<</if>>
<<if _searched>>
<p>The barrier stays down. A militiaman you don't recognize circles the sedan twice - new rotation, or new orders, or your face has simply been in too many notebooks lately. "Step out. Routine."</p>
<p>Nothing about it is routine. They take the door panels loose, sweep the wheel arches, run a mirror under Dre's clean paperwork.<<if $drug_stash > 0>> The stash comes out of your jacket in a zip-lock bag, photographed next to the plates.<<set $drug_stash = 0>><div class="statchange">(Your stash is confiscated.)</div><</if>> Your name goes into the notebook next to the plate number, underlined.</p>
<<statchange "heat" 15>>
<p>Word beats you back to the basement. Dre is waiting at the laundromat steps with his hand already out for the keys.</p>
<<speech "Dre" "My arrangement. My car. Your heat. The monthly I pay those men just went up, and until it settles, you walk like everybody else.">>
<<set $car_suspended = $day + 7>>
<div class="req">Dre took the keys back until day $car_suspended.</div>
[[Back into the hood|The Hood]]
<<else>>
<p>At the blockpost, the sergeant clocks the gray sedan from fifty meters and the barrier starts up before you finish slowing down. No papers, no flashlight, no questions - a nod that is almost professional courtesy. They know this car. They know exactly why it leaves the hood every night, and they are paid, monthly, to know nothing else. You roll through the one hole in the wall like water finding a crack.</p>
<p>And then you're outside. Clean asphalt. Streetlights that all work. A city going about its evening as if the wall were a retaining wall, something about landscaping. It's twenty minutes and a different planet.</p>
<<if $drug_stash > 0>>
<<linkreplace "Move your stash out here">>
<p>Out here the product is exotic - no corners, no lookouts, just bored money behind gym memberships and gallery openings. A gym-buddy of a gym-buddy, a bathroom at a wine bar, palms crossing palms with softer hands than you're used to. Outside prices make the corner look like charity.</p>
<<set _outsale = $drug_stash * 25>>
<<set _outheat = $drug_stash * 2>>
<<statchange "money" _outsale>>
<<statchange "heat" _outheat>>
<<set $drug_stash = 0>>
<p>Every sale out here is a thread leading back through one gate, one car, one face. Yours.</p>
<</linkreplace>>
<</if>>
<<linkreplace "Drive around a while">>
<<set _outev = random(1, 3)>>
<<switch _outev>>
<<case 1>>
<p>You idle at a red light next to a police cruiser and your pulse does what it's trained to do - but the officer glances over, sees a clean sedan with legal plates, and goes back to his phone. Out here you're nobody. After the hood, being nobody feels like witness protection.</p>
<<case 2>>
<p>You park across from a tower of glass and watch a penthouse window for a while: candlelight, a dinner party, a woman laughing with a glass of wine the size of your fist. Somewhere up there is the money that built the wall, eating dinner off the interest. One of Dre's girls is probably three floors below, being someone's secret. The city outside isn't free. It's just carpeted.</p>
<!-- IMAGE: penthouse window from street level - warm light, silhouettes, unreachable -->
<<case 3>>
<p>A supermarket, open all night, aisles wide as your whole hideout. You buy nothing. You just walk the produce section under the white light, among people who have never once counted patrol rhythms through a wall, and then you drive back before the feeling gets expensive.</p>
<</switch>>
<</linkreplace>>
<p>[[Drive back through the blockpost|The Hood]]</p>
<</if>>
*/<div class="text">Before it all went wrong, you were somebody.</div>
<div class="text">What does the mirror show?</div>
<div id="avatar-picker"><<include "AvatarPicker">></div>
<div class="text">Your real name - few people know it.</div>
<<textbox "$real_name" "Marcus" autofocus>>
<div class="guide">Quick stats guide:
<ul>
<li><span class="stat-name">Money</span> - Self-explanatory. Mostly comes from day jobs.</li>
<li><span class="stat-name">Energy</span> - Capped at 10, spent on various actions during the day. Sleep restores it.</li>
<li><span class="stat-name">Physical</span> - You're already in good shape, so this stat represents health and strength in one number. The gym and good food build it, beatings and hard work drain it, and at 0 game's over.</li>
<li><span class="stat-name">Respect</span> - Your name on the street. Mostly used for quest progression.</li>
<li><span class="stat-name">Heat</span> - Some of your actions will bring attention of law enforcement, and at higher levels it will make your life harder. Heat trickles down each day.</li>
</ul></div>
<p>[[Begin|IntroNew]]
[[Skip intro|Intro Skipped]]</p><div class="text">Skipping ahead doesn't wipe the slate. Everything that happened there still counts, and it left its marks:</div>
<<statchange "money" -25>>
<<statchange "physical" -5>>
<<statchange "respect" 2>>
<<statchange "heat" 30>>
<div class="req">The average outcome of the intro events has been applied.</div>
[[Go to the address|The hideout]]<<nobr>>
<<for _i = 1; _i <= 4; _i++>>
<<capture _i>>
<<link `"<img class='avatar-option" + ($avatar == _i ? " selected" : "") + "' src='img/misc/avatar_" + _i + ".jpg'>"`>>
<<set $avatar = _i>>
<<replace "#avatar-picker">><<include "AvatarPicker">><</replace>>
<</link>>
<</capture>>
<</for>>
<</nobr>><<nobr>>
<p>You board a pickup truck and join a company of sturdy, seasoned men. Driver, also the foreman, takes you away from the city to some distant community, where the wealthy build themselves palaces to indulge in vanity. On the positive note, the air is fresh, the sky is clear, and you feel almost reunited with nature - before starting the long shift of heavy work.</p>
<<album "img/construction/background_" 2 "jpg" "location">>
/* Rank ladder on $construction_rep. The body is the resume: under 35 physical you're day-labor meat no matter what the foreman remembers about you. */
<<if $physical < 35>>
<<set _rank = 0>>
<<elseif $construction_rep >= 25>>
<<set _rank = 3>>
<<elseif $construction_rep >= 12>>
<<set _rank = 2>>
<<elseif $construction_rep >= 5>>
<<set _rank = 1>>
<<else>>
<<set _rank = 0>>
<</if>>
<<switch _rank>>
<<case 0>>
<<if $construction_rep >= 5 && $physical < 35>>
<div class="req">The foreman looks at your hands, then at your face, and doesn't quite meet your eyes. However long you've hauled for him, a worn-out body gets the worn-out body's tasks. Day-laborer work, day-laborer pay.</div>
<<else>>
<div class="req">Day laborer. You're a pair of hands off the truck, interchangeable with any other pair.</div>
<</if>>
<<case 1>>
<div class="req">Regular. The foreman points at you first when the truck fills up.</div>
<<case 2>>
<div class="req">Trusted crew. You get the tasks that need a brain attached to the back.</div>
<<case 3>>
<div class="req">Foreman's guy. When he steps off site, he leaves you holding the clipboard.</div>
<</switch>>
<<linkreplace "Break the sweat">>
/* ==== The shift itself ==== */
<<set _results to random(0, 100)>>
<<if $physical < 35>>
<<set _base to 3>>
<p>You've grown too weak for this kind of work, and your earnings are lowered.</p>
<<elseif $physical < 60>>
<p>Your body can handle heavy labour.</p>
<<set _base to 5>>
<<else>>
<p>With your strength, you're able to perform more work than others, and thus earn more.</p>
<<set _base to 8>>
<</if>>
<<switch _rank>>
<<case 1>><<set _base += 2>>
<<case 2>><<set _base += 4>>
<<case 3>><<set _base += 6>>
<</switch>>
/* Injury is a 10% band (65-75); trusted crew get the safer tasks and halve it */
<<if _rank >= 2>><<set _injuryCut = 70>><<else>><<set _injuryCut = 75>><</if>>
<<statchange "energy" -5>>
<<statchange "construction_rep" 1>>
<<if _results < 65>>
<<if _rank == 3 && random(1,100) <= 35>>
<p>The foreman drives off to another site mid-morning and leaves you the crew. You spend the day pointing instead of lifting, settling two arguments and catching one mistake in the plans before it got poured in concrete. The men listen. That's not nothing.</p>
<<set _pay = _base*2 + 10>>
<<else>>
<p>It ain't much, but it's an honest work. When boarding the truck back to the city, you feel good about yourself - your hands created something today that may last longer than you live, even if that's some rich prick summer house.</p>
<<set _pay = _base*2>>
<</if>>
<<elseif _results < _injuryCut>>
<p>You injured yourself and barely did any work. The pay is lowered, not to mention the effects on your health.</p>
<<set _pay = _base>>
<<statchange "physical" -5>>
<<else>>
<p>Today, you've made so much progress that the foreman gives you a bonus! Unbelievable, I know.</p>
<<set _pay = _base*4>>
<<statchange "construction_rep" 2>>
<</if>>
<<if random(1,100) <= 15>>
<p>At the end of the day, the envelope is light. You count it twice in the truck, once more at home. The number doesn't change. Neither does anything else - the foreman shrugs, the client "adjusted the estimate", and the men who complain don't ride the truck next week. Honest work means the stealing is done to you politely.</p>
<<set _pay = Math.trunc(_pay / 2)>>
<div class="statchange">(Half your pay never made it into the envelope.)</div>
<</if>>
<<statchange "money" _pay>>
/* ==== Random event: the client's wife ==== */
<<if random(1,100) <= 10>>
<hr class="section-break">
<p>All afternoon there's a figure at the pool house window of the main residence - the client's wife, drink in hand, watching the crew work shirtless in the sun the way other people watch nature documentaries. The older guys don't even look up anymore. "The zoo goes both ways," one mutters.</p>
<<if _rank == 3 && $construction_wife == 0>>
<<linkreplace "Answer the look">>
<p>When the foreman sends you to the main house to check a fitting, she's waiting in the cool dark of the living room like it's a coincidence, silk robe doing the absolute minimum. "You're the one he trusts," she says, and puts your dusty hand flat on her breast. "So I can trust you to be quiet."</p>
<<video "img/construction/bored_wife.webm">>
<p>She shoves you down onto the pale designer couch she picked out of a catalogue, drops the robe somewhere behind her, and climbs on before your boots are even off, working herself down onto your cock in short greedy sinks, laughing at how much she has to stretch to take the whole thing. Then she starts riding you like the couch owes her money.</p>
<<set $construction_wife = 1>>
<<if random(1,100) <= 50>>
<p>You're two steps out the patio door when you meet the foreman's eyes across the yard. He doesn't say a word on the ride home. Next morning, the word is the client requested "a different crew composition". No pay docked, no scene - you just don't ride the truck for a week. Rich men don't punish you. They just make you disappear from the schedule.</p>
<<set $construction_banned = $day + 7>>
<<else>>
<p>Nobody sees you leave. On the ride home the foreman hands out the envelopes and yours has an extra ten in it - "client satisfaction bonus," he says to the windshield, absolutely without expression. You decide not to think about how many crews have had this exact bonus.</p>
<<statchange "money" 10>>
<</if>>
<</linkreplace>>
<</if>>
<</if>>
/* ==== Quest hook: community library ==== */
<<if $community_quest == 3 && $foreman_help == 0>>
<hr class="section-break">
<<linkreplace "Ask foreman for help with community library">>
<<if $construction_rep > 5>>
<p>You speak with the foreman about the community library. He thinks briefly before agreeing to lend you the tools and maybe even check out the site himself. Now, the renovations should progress faster!</p>
<<set $foreman_help to 1>>
<<else>>
<p>You need to gain foreman's trust before asking something like that.(construction_rep > 5)</p>
<</if>>
<</linkreplace>>
<</if>>
/* ==== Random event: the after-work hangout ==== */
<<if random(0,100)>50 && $money > 5 >>
<hr class="section-break">
<p>The foreman proposes that all workers hang out after a day of good work - it seems like a local tradition. To join, you need to chip in for a beer.</p>
<<linkreplace "Join the hangout">>
<<statchange "money" -5>>
<<statchange "construction_rep" 2>>
<<if random(0,100)>=50>>
<p>Sipping cold beer after a day of hard work makes you forget about the outside world. You share some stories and get to know each other better.</p>
<<else>>
<p>This time, you have collected enough money for a beer, and the extra goes on hiring a prostitute, a girl foreman seems to know.</p>
<<if _rank == 0>>
<p>The blonde slut enjoys the fuck train, but the pecking order is the pecking order: new hands go last. By the time the crew waves you over she's a used-up, cum-drooling mess and the truck is honking - you get a sloppy thirty seconds of her tired mouth before the foreman calls time. The guys laugh and slap your back. "Stick around, rookie. Seniority has benefits."</p>
<<video "img/construction/rookie_blowbang.webm">>
<<elseif _rank <= 2>>
<<set _hangout_vids to either("img/construction/hangout_1.webm","img/construction/hangout_2.mp4")>>
<p>The blonde slut enjoys the fuck train, and you bond while waiting for your turn - a real turn now, not the rookie scraps. When it comes, you fuck her over the tailgate to a chorus of cheers while she begs for it louder than she needs to, professional to the bone, and the crew ranks your form like judges at the Olympics.</p>
<<video _hangout_vids >>
<<else>>
<p>Foreman's guy gets the foreman's treatment: tonight there are two girls, and the "tradition" stops pretending it's anything but what it is - a crew orgy in an unfinished four-million-dollar living room. The blonde rides one of the masons on a stack of insulation while her friend, a wiry brunette with a filthy mouth, pulls you down onto the plastic sheeting and impales herself on your cock, narrating to the room exactly how the foreman's guy measures up. You spit-roast her with the crane operator until she's shaking, swap, and finish on the blonde's face next to two other loads. Somebody's radio plays through all of it. Monday you'll pour a floor over this exact spot.</p>
<<video "img/construction/final_party.webm">>
<p>Shared beer is shared beer, but this - this is shared trust. The crew treats you different after.</p>
<<statchange "construction_rep" 2>>
<</if>>
<</if>>
<</linkreplace>>
<</if>>
<</linkreplace>>
<hr class="section-break">
<<if $ella_end_quest == 1 && $ella_end_construction == 0>>
<<linkreplace "[Ella]Steal some materials">>
<p>It's not that you are stealing from the foreman, but probably he will be the one to blame. He'll make it, though; no construction is ever done by the books.</p>
<<set $ella_end_construction = 1>>
<</linkreplace>><br>
<</if>>
[[Go back|The Hood]]
<</nobr>>/*
Shared new-day backend for every sleep passage (Sleep, Closet Sleep, ...).
Narration stays in the individual passages - this only mutates state.
<<newday>> - resets daily counters, advances $day, decays heat/laying_low,
and runs the rent-due check. Sets _rent_due so the calling passage can
render its own rent narration (and apply the money/respect statchange).
Rent contract for any new sleep passage: $20/week, first envelope day 15,
then every 7 days, wherever the player slept. When _rent_due is true the
passage MUST offer the choice rather than deduct silently - pay $20 (only
shown if $money >= 20), or leave it empty for -10 respect while broke /
-20 respect while holding the money. Put the passage's continue link
inside each branch's <<replace "#output">> so the choice can't be skipped,
and show <<rentinfo>> on the hub that leads to the bed.
*/
<<widget "newday">>
<<set $eat_today to 0>>
<<set $nextday to 0>>
<<set $savannah_action_made to 0>>
<<set $savannah_observation_made to 0>>
<<set $hacked_had_sex_today to 0>>
<<set $school_tasks_done to 0>>
<<set $school_time = "morning">>
<<set $day += 1>>
<<set $heat = Math.max(0, Math.min(100, $heat - 3))>>
<<if $laying_low > 0>><<set $laying_low -= 1>><</if>>
<<set _rent_due = not $rent_waived && $day >= 15 && ($day - $rent_day) >= 7>>
<<if _rent_due>><<set $rent_day = $day>><</if>>
<</widget>>
/*
<<schoolpay>> - the school's weekly wage. Self-contained (checks, narrates
and pays) because unlike rent there is no choice to present, and it used to
live on the Outside passage: a player who slept in the closet and never
punched out that way was never paid at all, with no back-pay. Call it right
after <<newday>> in every sleep passage.
The wage is per shift, not per week: $5 for every day in the pay week on
which at least one work order got done ($school_shifts, counted by
<<schoolshift>>), capped at 5 shifts = $25. A week of no work leaves the
envelope empty.
*/
<<widget "schoolpay">>
<<if $school_job >= 1 && ($day - $school_pay_day) >= 7>>
<<set $school_pay_day = $day>>
<<set _shiftsPaid = Math.min($school_shifts, 5)>>
<<set $school_shifts = 0>>
<<if _shiftsPaid > 0>>
<p>Payday. The envelope from the front office holds what this school thinks _shiftsPaid <<if _shiftsPaid == 1>>shift<<else>>shifts<</if>> of your back are worth.</p>
<<statchange "money" `_shiftsPaid * 5`>>
<<else>>
<p>Payday, in theory. The envelope in your slot has your name on it and a timesheet stapled inside with every box blank. The front office pays for hours punched, not for coveralls hanging in a closet.</p>
<</if>>
<</if>>
<</widget>>
/*
<<schoolshift>> - logs today as a worked shift for the weekly wage. Call it
wherever a school work order is completed; any number of orders on the same
day still count as one shift.
*/
<<widget "schoolshift">>
<<if $school_shift_day != $day>>
<<set $school_shift_day = $day>>
<<set $school_shifts += 1>>
<</if>>
<</widget>>
/*
<<detentionroster>> - rolls the day's fifth-period list once, rather than
letting a trip through the Hallway reroll it. The post has a 33% chance of
being empty; on staffed days the boys arrive as one unit half the time.
*/
<<widget "detentionroster">>
<<if $detention_roster_day != $day>>
<<set $detention_roster_day = $day>>
<<set $detention_has_students = random(1, 100) > 33>>
<<set $detention_incel_roster = $detention_has_students && random(1, 2) == 1>>
<<set $detention_event = random(1, 6)>>
<</if>>
<</widget>>
/*
<<rentinfo>> - small notice about the next room payment: when and how much.
Before the first envelope $rent_day is still 0, so the first due date is
day 15 - the same gate <<newday>> uses. Silent only while rent is waived.
*/
<<widget "rentinfo">>
<<if not $rent_waived>>
<<set _rentNext = $rent_day > 0 ? $rent_day + 7 : 15>>
<<set _rentIn = _rentNext - $day>>
<div class="req">Room rent: $20<<if $rent_day == 0>>, first envelope on day _rentNext<<else>>, next envelope on day _rentNext<</if>><<if _rentIn <= 0>> (this morning)<<elseif _rentIn == 1>> (tomorrow morning)<<else>> (in _rentIn days)<</if>>.</div>
<</if>>
<</widget>>/* CUT: street corner arc is not going into the next release - whole passage commented out.
<!-- IMAGE: street corner at night - dealers in hoodies under a dead sodium light, lookout kid on the step -->
<<if visited() == 1>>
<div class="text">The corner works the way corners have always worked: two young men under a dead streetlight who are never quite facing you, a kid on a step whose whole job is his eyesight, and a rhythm of hand-to-hand traffic timed between patrol passes. In a neighborhood the banks redlined and the employers fled, this is the stock exchange. Everybody hates it. Everybody's cousin works it.</div>
<div class="text">The taller one gives you the chin-up nod of a man who has already asked around about you. Around here, that's a letter of introduction.</div>
<<set $dealer_stage = 1>>
<<else>>
<p>The corner hums at its usual frequency - the lookout kid on the step, the two silhouettes under the dead light, the traffic of palms.</p>
<</if>>
<<nobr>>
<<if $drug_stash < 5>>
<<linkreplace "Buy product ($10)">>
<<if $money >= 10>>
<<statchange "money" -10>>
<<set $drug_stash += 1>>
<<statchange "heat" 1>>
<p>A palm crosses a palm. You're carrying now - one more reason to walk carefully. (Stash: $drug_stash/5)</p>
<<else>><p>No credit on the corner. Come back with cash.</p><</if>>
<</linkreplace>><br>
<<else>>
<div class="req">You're carrying as much as one man can explain away. (Stash full: 5/5)</div>
<</if>>
<<if $drug_stash > 0>>
<<linkreplace "Sell your stash here">>
<<if random(1, 100) <= 10>>
<p>Halfway through the count, the lookout kid whistles the bad whistle. A cruiser noses around the corner at walking speed. The stash goes down a storm drain - the only bank that never gives anything back - and everyone becomes a man waiting for a bus.</p>
<<set $drug_stash = 0>>
<<statchange "heat" 3>>
<<else>>
<<set _sale = $drug_stash * 15>>
<<set _saleheat = $drug_stash * 2>>
<<statchange "money" _sale>>
<<statchange "heat" _saleheat>>
<<set $drug_stash = 0>>
<p>Corner prices are honest, at least: modest margins, high turnover, no questions.</p>
<</if>>
<</linkreplace>><br>
<</if>>
<<if $dealer_stage == 1>>
<<if $respect >= 25>>
<<linkreplace "Ask for work">>
<p>The taller one hears you out, then studies the street over your shoulder for a while.</p>
<<speech "Dealer" "Everybody vouches for you, that's the funny thing. The library man, the gym man. A citizen. So understand what you're asking - this ain't citizen work.">>
<p>You know exactly what it is. It's also forty-five dollars a night in a neighborhood where the warehouse pays forty for breaking your back. He reads your face and nods, slow.</p>
<<speech "Dealer" "Shift work. You hold, you serve, you keep the count straight. The kid whistles, you walk - you don't run, running is a confession. We square up at close.">>
<<set $dealer_stage = 2>>
<</linkreplace>><br>
<<else>>
<div class="req">The crew doesn't put strangers on. (25 respect to ask for work)</div>
<</if>>
<</if>>
<<if $dealer_stage == 2>>
<<if $energy >= 5>>
<<linkreplace "Run a shift">>
<<statchange "energy" -5>>
<<statchange "heat" 12>>
<<set _night = random(1, 100)>>
<<if _night <= 35>>
<<statchange "money" 45>>
<p>A steady night. Palms, counts, patrol gaps. You learn the corner's grammar - who buys to function, who buys to disappear, which regulars you quietly shortchange toward quitting. At close, the tall one counts your cut without ceremony.</p>
<<elseif _night <= 62>>
<<statchange "money" 60>>
<p>Word's out that the corner has a new face who doesn't skim and doesn't panic. Volume is up. The tall one adds a bonus to your cut with the closest thing to a smile the corner allows.</p>
<<elseif _night <= 74>>
<p>Past midnight, a girl materializes at your elbow - early twenties wearing late thirties, pretty underneath the chemistry, scratching one forearm in the slow rhythm of need. She's eight dollars short and both of you know she was eight dollars short before she counted.</p>
<<speech "Junkie Girl" "I'm good for it. Or - I'm good for it right now, behind the laundromat. Whatever you want. I used to charge real money for this, you know. Ask anybody.">>
<<set _junkieChoiceMade = false>>
<div id="junkie-choice">
<<linkreplace "Take the trade">>
<<replace "#junkie-output">>
<p>Behind the laundromat she's on her knees before you've agreed out loud, working your belt with fingers that only stop shaking once they have a task. She wasn't lying about the old job - the mouth is professional even if nothing else about her is anymore, hungry and expert and horribly efficient, eyes closed, already somewhere else, already high on the arithmetic of what comes after.</p>
<!-- VIDEO: alley behind laundromat - desperate junkie blowjob, harsh light -->
<p>You finish, she wipes her mouth with the back of her wrist, takes the wrap, and is gone around the corner without a word - no coat, wrong shoes, all appetite. She'll be back tomorrow, and the day after, each time a little worse. You've just taught her the new exchange rate.</p>
<<if $drug_stash > 0>>
<<set $drug_stash -= 1>>
<div class="statchange">(One unit of your own stash covered the dose. Stash: $drug_stash/5)</div>
<<else>>
<div class="statchange">(The dose comes out of your count at close. -$15)</div>
<<set $money = Math.max(0, $money - 15)>>
<</if>>
<<statchange "respect" -2>>
<p>The lookout kid saw. The tall one hears about it by close and says nothing, which is how the corner says everything: dealers who take pussy instead of money look hungry, and hungry looks weak.</p>
<</replace>>
<<replace "#junkie-choice">><</replace>>
<</linkreplace>><br>
<<linkreplace "Wave her off">>
<<replace "#junkie-output">>
<p>"Money or walk." She curses you with startling creativity and dissolves back into the dark to find a softer dealer - and she will find one. You didn't save her. You just declined to be the one holding the leash tonight. The tall one clocks the exchange from across the street and gives you a slow nod.</p>
<<statchange "respect" 1>>
<</replace>>
<<replace "#junkie-choice">><</replace>>
<</linkreplace>>
</div>
<div id="junkie-output"></div>
<<statchange "money" 45>>
<<elseif _night <= 87>>
<<if $physical >= 50>>
<<statchange "money" 45>>
<p>Around two, three men from the eastside crew arrive to explain that this corner is changing management. You step out from under the light so they can see the whole silhouette, and the negotiation concludes itself. The crew notices you didn't need to throw a punch. The best muscle never does.</p>
<<statchange "respect" 3>>
<<else>>
<<statchange "money" 35>>
<<statchange "physical" -5>>
<p>Around two, the eastside crew comes through swinging. You hold the corner - barely - at the cost of a split lip and a boot print on your ribs. The count comes up short too. Some nights the job is just paying the neighborhood's taxes in blood.</p>
<</if>>
<<else>>
<<statchange "heat" 10>>
<p>The kid whistles mid-transaction and the night ends in a foot chase through back lots, product ditched, customers scattered. Nobody's caught, but nobody's paid either - and a patrol got a good look at the new face on the corner.</p>
<</if>>
<</linkreplace>><br>
<<else>>
<div class="req">A shift on the corner runs till close. You don't have it in you tonight. (5 energy needed)</div>
<</if>>
<<if $respect >= 25>>
<<if $day >= $protection_until>>
<<linkreplace "Pay for the lookouts ($30 for the week)">>
<<if $money >= 30>>
<<statchange "money" -30>>
<<set $protection_until = $day + 7>>
<p>You peel off thirty and the tall one folds it away without counting - counting would be an insult, and you've earned better. He tips his chin at the kid on the step, then at the rooftops.</p>
<<speech "Dealer" "You're on the network now. The kid whistles for you same as for us. Rooftop eyes, bicycle bells, the whole telegraph. Patrols don't surprise family.">>
<div class="req">The corner's early-warning network covers you for 7 days. Patrols will have a harder time catching you slipping.</div>
<<else>><p>The network runs on cash, not credit. Thirty, up front.</p><</if>>
<</linkreplace>><br>
<<else>>
<div class="req">The lookouts are watching your back until day $protection_until.</div>
<</if>>
<</if>>
<<if $brothel_unlocked == 0>>
<<linkreplace "Ask what else moves money around here">>
<p>The tall one weighs you for a second, then tips his head toward the dark end of the block.</p>
<<speech "Dealer" "Basement under the old laundromat. Man called Dre runs girls out of there - not for the neighborhood, for the <i>outside</i>. Rich boys downtown pay a fortune for a taste of what they built the wall around. It's ugly money. Dre's always looking for serious men. Tell him the corner sent you.">>
<<set $brothel_unlocked = 1>>
<</linkreplace>><br>
<</if>>
<</if>>
[[Back to the block|The Hood]]
<</nobr>>
*/<<switch $ella_stage>>
<<case 0>>
She looks miserable.
<div class="text">You slide onto the stool next to her, offering a nod. She glances at you, her tired eyes briefly scanning your face before returning to her drink.
<<speech "You" "Didn't expect to see someone like you here.">>
<<pic "img/ella/ella_cold_bar.jpg" "story">>
She smirks faintly, though it doesn't reach her eyes.
<<speech "Ella" "Yeah, well, I didn't expect to lose everything, either.">>
That sounds like an invitation for a conversation - and it seems she craves someone to listen. Her name is Ella. She used to run the community library a few blocks over - the heart of the neighborhood, she explains, until a far-right militia torched it during the last neighborhood raid. The Oath Boys, she says, with a face like the words taste bad - the regime's volunteer militiamen, the ones who run the blockposts. Grown men in surplus camo and homemade armbands who practice their salutes in parking lots and can't wait for a reason to use the rest of the costume.
<<speech "Ella" "I'm trying to rebuild it... But I can't do it alone, and everyone fears the Oath Boys will retaliate again.">>
The way she looks at you, there's no mistaking the ask. And something about her determination, despite everything, makes it hard to say no.</div>
<<set $community_quest to 1>>
<<set $ella_stage to 1>>
<<case 1>>
<p>You tell her that you started working on the community library.</p>
<<speech "Ella" "Whaaaaaat, get out, dude... This is fucking awesoooome! I'll have a job again!">>
<p>Ella leans closer - much closer - one hand landing on your forearm and staying there, her eyes doing something that would be dangerous if they could focus.</p>
<<pic "img/ella/stage1.jpg">>
<<speech "Ella" "You want somethin' in return, riiiight? Like, I owe you a handjob or something?">>
<p>She sways into your shoulder and stays there a beat too long, and there's no mistaking the invitation floating somewhere behind the booze. There's also no taking it. She reeks of whiskey, and she's closer to puking or falling asleep than to whatever she thinks she's suggesting.</p>
<<speech "You" "Tell me all about it when you can say it without holding onto the bar. How about I get you home? You look like you need some rest.">>
<<speech "Ella" "Meeee, cmooon... well, I guess you're right.">>
<p>Convincing her was easier than you expected. You asked the bartender to call for a trusted taxi driver and get Ella inside the cab. You make sure the driver realizes that in case anything happens to her, you will find him - and you will kill him.</p>
<<speech "Taxi driver" "Relax, man, I'll get her home safe. You can have my word." "taxi_driver">>
<p>You get back in the bar only when you are assured that Ella will be driven home safely and even escorted to the door. The bartender nods to you respectfully. You nod back.</p>
<<statchange "money" -5>>
<<statchange "respect" 10>>
<<set $ella_stage to 2>>
<<set $ella_next_day = $day + 1>>
<<case 2>>
<p>Ella isn't at the bar these days - the bartender says she's been at the library site since morning, sober as a judge. You should find her there.</p>
<<case 3>>
<p>Ella practically lives at the library site now. If you want her, that's where she'll be - probably with a clipboard.</p>
<<case 4>>
<div class="text">The library is open again, a patchwork of old and new. The charred walls have been scrubbed clean, though you can still pick out the fire's scars if you know where to look. Shelves cobbled together from scavenged wood line the walls, sparsely filled with books saved from the ashes - the "lives" stack, every volume of it. The bumpy floor gleams faintly under the dim light of repurposed fixtures. A handmade sign above the entrance reads, "Community Library: Open Again," painted with uneven strokes but brimming with pride.
Ella steps inside, her footsteps echoing softly. She runs her fingers along a shelf, pausing to pick up a book whose edges are singed but pages intact - the picture book with the paper sun. Her eyes glisten as she looks around, taking in the quiet resurrection.</div>
<<speech "Ella" "This... This is more than I ever thought possible. Sure, some books are destroyed, but now we have space to conduct community meetings and workshops. This could be a beating heart of the neighborhood!">>
<p>She continues, with her voice catching:</p>
<<speech "Ella" "You gave people something to hope for.">>
<p>Her smile, tired but radiant, says everything words cannot. There is nothing else left in the world but to hug Ella. You embrace her tiny body and feel how she melts in your hands. For some time, you stand in the middle of the renewed library and enjoy the moment - until Ella reaches up, and your lips connect. This is sudden but also expected - it's been coming since the salvage day, since the coffee, maybe since the taxi. You return the kiss.</p>
<<video "img/ella/first_kiss.webm" >>
<p>It breaks slowly. She stays in your arms, forehead against your chest, and when she speaks it's half into your shirt:</p>
<<speech "Ella" "Tomorrow's the opening. The whole neighborhood is coming, and I intend to be respectable for every excruciating minute of it. But after we close up... stay. I mean it. Stay.">>
<p>She looks up to make sure you've understood her - you have, completely - and then steps back, all business again, smoothing her shirt and pointing you at a crooked shelf that needs fixing before tomorrow.</p>
<<set $ella_stage to 5>>
<<set $ella_next_day = $day + 1>>
<<set $community_quest to 4>>
<<statchange "respect" 40>>
<<case 5>>
<<if $day >= $ella_next_day>>
<p>The room hums around her all afternoon, and through all of it, every time you look at Ella, she's already looking at you.</p>
[[Stay past closing|EllaFirstNight]]
<<else>>
<div class="req">The grand opening is tomorrow. Ella made you promise to be there - and to stay after.</div>
<</if>>
<<case 6>>
<<if $target1 >= 4>>
<p>You go looking for Ella at the library, but her desk holds only a note: "brb". You wait some more, but she's clearly not returning to her work any time soon. Where else could she be?</p>
<<set $ella_stage to 7>>
<<else>>
<<pic "img/ella/stage3.jpg">>
<p>Ella is busy bringing the library back to life.</p>
<<speech "Ella" "Hey, good to see you - but let's talk later, OK? I have so many things to do here...">>
<div class="req">You both have a job to do - return when you have finished your first task from Jamal.</div>
<</if>>
<<case 7>>
<p>Eager to find Ella after a long time in hiding, you go to the library only to find a note "brb" at her desk. You wait some more but realize she's not returning to her work any time soon. Where else could she be?</p>
<<case 8>>
<<speech "You" "Hey, Ella... Are you alright?">>
<<pic "img/ella/first_meeting.jpg">>
<p>She looks at you as if surprised to see you.</p>
<<speech "Ella" "Wooooaaah, look what the cat dragged in! I was in the process of accepting that I might never see you again, and here you are...">>
<p>Ella grabs the glass and chugs her drink, not looking at you. Wait, is this all because of you?</p>
<<speech "Ella" "So, will you explain yourself, mister?">>
<<speech "You" "What do you want to hear?">>
<<speech "Ella" "How about... WHY HAVE YOU DISAPPEARED WITHOUT SAYING A WORD TO ME?!!">>
<p>The bartender politely looks the other way, pretending that he - and the rest of the patrons - can't hear the fight starting between you.</p>
<<speech "Ella" "And then *burp*, when I'm all worried about your life, this video comes up where you fucking this bimbo cow, and I realize that you just didn't care. Maybe I'm a stupid girl who thought we had something. Or is my tits too small for you?">>
<p>She starts sobbing, and it's pathetic. You need to take some action.</p>
<<speech "You" "Look, I can explain everything. First, I do care about you. This time, while I was away, I thought a lot about you. Second... Sorry, I guess I've never thought we have established a relationship. How about we fix that? Let's go on a date.">>
<p>Ella looks at you, drunk, sobbing, but with a faint smile on her lips.</p>
<<speech "Ella" "Let's go, I guess... Meet me here tomorrow?">>
<<speech "You" "I will.">>
<p>You kiss her lips - she tastes salty from tears. Then, as usual, you get her a taxi home.</p>
<<speech "Taxi driver" "..." "taxi_driver">>
<p>Now... You would need to prepare for a date!</p>
<div class="req">You would need some cash - $50 would do - and 60 respect to pull a favor from an old acquaintance.</div>
<<set $ella_next_day = $day + 1>>
<<set $ella_stage = 9>>
<<case 9>>
Meet Ella at the bar when you are ready.
<<case 10>>
<<speech "Ella" "Made up your mind?">>
<<include "EllaChoice">>
<<case -1>>
Ella is packing the books in boxes - it seems she has found the buyer. Are you ready to go?
<<if $ella_end_car == 0>>
You need some wheels. Check out the neighborhood for a car to hijack.
<<elseif $ella_end_construction == 0>>
You should check the construction site; there are a lot of valuable things lying around.
<<elseif $ella_end_warehouse == 0>>
Check if you can steal some packages in the warehouse.
<<elseif $ella_end_bar == 0>>
A lot of cash is going through the bar; you can rob the Earl of some of it.
<<elseif $ella_end_hacker == 0>>
Adriana has a lot of electronics at her place. She won't notice some missing.
<<else>>
You have the wheels, cash, and a lot of stolen stuff to sell later. Time to [[hit the road|EllaEnding]].
<</if>>
<<case 11>>
<<if $knowledge<20>>
<div class="req">You need to raise your knowledge to 20 to proceed with Ella.</div>
<<else>>
[[Talk with Ella about what you read.|Ella_v3]]
<</if>>
<<case 12>>
<<if $william_stage == 6 && $pollock_stage >= 4>>
<p>You haven't seen Ella since the night downtown. She's probably keeping to her flat two streets over, the one you've only ever seen from the back of a taxi.</p>
<<if $energy >= 3>>[[Check on her|Ella After Vegas]]<br><<else>><div class="req">You need 3 energy to go and see her.</div><</if>>
<<else>>
<<pic "img/ella/eoc.jpg">>
This is the end of content for Ella. <<if $ella_mmf_stage >=0>>Except that MMF scene available after meeting with Jamal in the library.<</if>>
Stay tuned!
<</if>>
<<case 13>>
<<pic "img/ella/eoc.jpg">>
<<if $ella_swap_verdict == 1>>
She asked to be alone, and you're giving her that. This is the end of content for Ella for now.
<<else>>
This is the end of content for Ella. Stay tuned!
<</if>>
<</switch>>
<<return>><<pic "img/ella/date/meet_1.jpg">>
<p>You haven't seen Ella so gorgeous yet. Wearing a short black dress and evening makeup, she attracts a lot of gazes from the bar patrons, who - just like you - get used to seeing her either as a bookworm or a drunk woman down on her luck.</p>
<<speech "You" "You look beautiful, Ella.">>
<<speech "Ella" "Is that the first compliment you ever gave me?">>
<<speech "You" "I promise it won't be the last. Shall we?">>
<p>You leave the bar and get inside the taxi with a familiar driver.</p>
<<speech "Taxi driver" "Finally you drive together. Where to?" "taxi_driver">>
<div class="text">There aren't a lot of opportunities for a good night out in your depressed neighborhood, and in the city, typically, you'd attract too much attention - both because you're poor and because you are black and Ella is white. Thankfully, you've pulled some strings, unearthed some old connections from your service, and managed to get a table at a decent restaurant at one of the hotels Downtown, and if everything goes well, you even arranged a suite at the same place.
You arrive at the destination and sit in a quiet corner of a cozy restaurant; just as you were told, you don't get any sidelong glances in this place. Accompanied by good food and drinks, you have a lively conversation, sharing your stories and getting to know each other better.</div>
<<pic "img/ella/date/meet_2.jpg">>
<hr>
<<speech "Ella" "My parents were British, but I spent my childhood all over the globe. After uni, I stayed in the States and, well, never left.">>
<hr>
<<speech "You" "Jeremy, my brother, is my only family.">>
<hr>
<<speech "Ella" "I wish one day to write a novel about what I've seen. Maybe it can change things.">>
<hr>
<<speech "You" "I hope I never have to shoot a gun ever again. Some of my comrades enjoyed what we did overseas, but not me.">>
<hr>
<<speech "Ella" "Have you seen the library at dawn? It fills with this beautiful glow, and even the neighborhood does not look that depressing.">>
<hr>
<<speech "You" "I should one day show you the place I worked at outside the city. The nature is simply ethereal there.">>
<hr>
<<speech "Ella" "I miss mountains. And snow.">>
<hr>
<p>Among everything, you partly disclose your 'fight' against the state; Ella is dumbfounded, reasonably, and you quickly switch topics.</p>
<hr>
<p>It feels weird that your relationship started with a thank-you blowjob and not a proper date like that. This evening was lovely, maybe the best since your return to the country.</p>
<<speech "Ella" "This was so nice. I wish we didn't have to go back to our usual lives.">>
<<speech "You" "How about instead of a taxi, we take an elevator to a better place?">>
<<speech "Ella" "What? Don't tell me...">>
<p>There is no way you could have afforded the suite here; technically, you're not even staying here, just happening to know an empty room with an open door, thanks to a friend of a friend in the hotel staff.</p>
[[Take the elevator|EllaDate_2]]<<pic "img/ella/date/hotel.jpg">>
<<speech "Ella" "Haven't taken you for a romantic type.">>
<<speech "You" "I just work with what I have.">>
<p>You excuse yourself to the bathroom and later find Ella on the balcony without her dress. The gorgeous redhead is busy looking at the night cityscape, but you can't look anywhere but her plump butt.</p>
<<pic "img/ella/date/pose.jpg">>
<<speech "Ella" "Check out the view from here!">>
<<speech "You" "Oh, I'm checking it already.">>
<<speech "Ella" "I bet you do.">>
<p>You embrace her for a kiss and make out, feeling yourself on top of the world. Your daily struggles and problems are all down there, unreachable, meaningless - all that matters is Ella in your hands.</p>
<<speech "Ella" "Take me inside. And... I want to film myself like you film that policeman's wife.">>
<<speech "You" "Why?">>
<<speech "Ella" "Why? I don't know... Maybe I'm still jealous? Want to do things you did with her? You'd better pull out that big black cock before we dig too deep.">>
<<video "img/ella/date/1_reveal.webm" >>
<p>Holding her phone in one hand, Ella records herself kneeling before your dick. She plays for the camera as if proving that she could be blacked out as well as any other wife you have sex with.</p>
<<nobr>><<set _choiceMade = false>>
<div id="choice-container">
<<if not _choiceMade>>
<<linkreplace "Just enjoy">>
<<set _choiceMade = true>>
<<replace "#output">>
<<video "img/ella/date/2_blowjob.webm" >><br>
<p>You relax and let Ella do the job. She plays with your glans, kissing it and wrapping it with her lips. You are too big for her to handle, but this doesn't stop you from enjoying the blowjob. You wished Ella maintained eye contact with you and not the camera, but it's her game to play.</p>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Just enjoy"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Treat her rough">>
<<set _choiceMade = true>>
<<replace "#output">>
<<speech "You" "If you really want to have the blacked experience, get ready.">>
<<video "img/ella/date/3_facefuck.webm" >><br>
<p>You pin Ella against the wall and push your dick as far as you can in her throat - not far, but deep enough to feel her whole head wrapped around your giant cock. She gags and coughs but undoubtedly enjoys how you handle her.</p><</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Treat her rough"</em></div><</replace>> <!-- Hides both choices -->
<</linkreplace>><br>
<</if>>
</div>
<div id="output"></div>
<</nobr>>
<<linkreplace "Continue in bed...">>
<<video "img/ella/date/4_ride.mp4" >>
<p>It's time to put the hotel bed to the test. Since this is your first time, you put Ella on top to control the depth and speed - you don't want to hurt her by slamming your dick in her tiny pussy. She takes more of your dick than you would have expected, and when you switch positions, you are not afraid of rapid movements.</p>
<<video "img/ella/date/5_missionary.webm" >>
<p>With her legs spread, pussy open, Ella is ready to take your black cock, and you unite in passionate lovemaking. You should have done it long ago, claimed this ginger pussy the first moment you saw her - but now you own it, and it's all that matters.</p>
<<video "img/ella/date/6_cum.mp4" >>
<p>You finish with a facial, feeding Ella your cum. She happily catches every last drop of your semen, and you go back into bed for cuddles. You lie in bed with a happy woman you like - finally at peace...</p>
[[Next|EllaDate_3]]
<</linkreplace>><p>You accidentally fall asleep and wake up when it's still dark. Ella is already up, sitting near the window; she looks moody. How long has she been there?</p>
<<pic "img/ella/date/dawn.jpg">>
<<speech "You" "Good morning... is it morning? We might have to leave soon.">>
<<speech "Ella" "I wish we stayed here.">>
<<speech "You" "Hey, is something troubling you?">>
<<speech "Ella" "Well... Don't get me wrong, yesterday was magnificent. So good I don't want to get back to my normal life in the slums. To the life where I have to share you with other women.">>
<p>This conversation is unavoidable; you want to be more than friends with benefits, but you need to set up some rules.</p>
<<speech "You" "You know it's different. With what I do, I can achieve something; with that policeman's wife, I wasn't doing it because I wanted her but because she was unlucky to have a sadistic husband.">>
<p>Ella sighs.</p>
<<speech "Ella" "I still need some convincing on that, to be honest.">>
<<include "EllaChoice">>
<<linkreplace "Let's talk later.">>
<<speech "Ella" "You're right. Find me in the library.">>
<<set $ella_stage = 10>>
[[Get back to your life|The Hood]]
<</linkreplace>><<switch $ella_end_quest>>
<<case 0>>
<<speech "You" "You know what? Fuck this all. I don't want to get to our ghetto either. Let's run away.">>
<<speech "Ella" "Not funny.">>
<<speech "You" "I mean it! Why do we need to stay in this shithole? Waste our lives for nothing? We can drive up north and live quietly, away from... everything.">>
<<speech "Ella" "Let's pretend you are serious... Where do we get money for that?">>
<p>You think. You'll need some funds for safe travel, covering your trails, and then setting up a new place to live.</p>
<<speech "You" "Check what you can sell in the library. I will go through my places and see what I can find.">>
<<speech "Ella" "Okay... But what about your brother? Aren't you doing everything for him?">>
<<speech "You" "He can't be saved, and it was foolish to believe otherwise.">>
<p>It hurts you to say it out loud. Do you really believe it? You do now. Otherwise, you are betraying the only family you have. Yes, it's better to think Jeremy would have wanted you to live your life, not sacrifice it for him.</p>
<div class="req">Check the neighborhood and its surroundings for a car, cash, or things that can be sold for cash. Meet with Ella at the Community Center when you think you're done.</div>
<<set $ella_end_quest = 1>>
<<set $ella_stage = -1>>
[[Return to the hideout|The hideout]]
<<case 1>>
<div class="text">It's a long road to the Northern States, former Canada. While not out of reach from the government, it's still not fully incorporated. The riskiest part of the journey was crossing the border, and after that, you dissolve into the vastness of forests and mountains.
It wasn't easy, but in time you settled in. A decent house in the snowy mountains with the air so fresh it makes your head spin. You find a job as a mountain rescue worker that fits your physique. Ella is trying to write her novel, but it's not going well.</div>
<p>Up here nobody has ever heard the surname you bought in a back room. Ella calls you $real_name - the real one, the one you gave her somewhere before the border, whispered like contraband. Hearing it in her mouth every morning still catches you off guard. In a good way.</p>
<<video "img/ella/ending/1_kiss.mp4" >>
<p>You still have that burning drive and excitement from being two runaways who give up everything and try to live together. But it's fading out.</p>
<<video "img/ella/ending/2_kiss.webm" >>
<p>When the flame of desire fades completely, what will be left? Can you bear each other stuck in the same snow-capped house?</p>
<<video "img/ella/ending/3_blowjob.mp4" >>
<p>Can you stop staring at the ceiling at night, thinking about your brother?</p>
<<video "img/ella/ending/4_cuni.webm" >>
<p>Ella's pussy juices grant you temporary oblivion better than any spirit; you hungrily eat her out, wanting to get the thought out of your head.</p>
<<video "img/ella/ending/5_doggy.webm" >>
<p>Pinning her down to the floor still feels amazing every time you do it. There may be hope for you two, after all.</p>
<<video "img/ella/ending/6_cum.webm" >>
<p>Maybe you just need to live through the winter.</p>
<div class="text" style="font-size: 1.5em; font-weight: bold;">The end?</div>
<</switch>><p>The address Ella gave you leads you to a wealthy district. Moving quickly before neighbors report two suspicious blacks, you and Jamal enter a small but exquisite house.</p>
<<speech "Jamal" "Remind me, how your girl affording a place like this?">>
<<speech "You" "She has an old college friend she's been house-sitting for - watering the plants and stuff like that.">>
<<speech "Jamal" "College, huh? I forgot your girl a nerd.">>
<<speech "You" "Shut up, bro.">>
<p>You ring the bell, and Ella lets you in.</p>
<<speech "Ella" "Welcome, boys. I was just about to get lonely...">>
<<video "img/ella/jamal/threesome-0.mp4">>
<p>She's gorgeous tonight. You two tried to look as casual as possible to attract less attention, but Ella decided to shine for the upcoming devil's threesome. She wears an emerald dress that perfectly matches her hair, but her clothes don't stay long on her as she slowly undresses right after you step inside. Stepping back, she leads you to the bedroom, and you lose your clothes while following her. Straight to the action, huh?</p>
<<video "img/ella/jamal/threesome-1.mp4">>
<p>The bedroom treats you with a giant bed, on which the main attraction for tonight stands in all her glory. You and Jamal take a moment to admire her emerald underwear before closing in and practically worshipping her body. Two pairs of hands touch and grope Ella, and she is already wet from being the center of attention - even if she is not ready yet to admit that she enjoys it so much.</p>
<<video "img/ella/jamal/threesome-2.mp4">>
<p>You take turns kissing her, and this process of switching between your lips to Jamal's and back makes Ella ever hornier; she looks as if she's drunk, but only from an overwhelming lust.</p>
<<speech "Ella" "~You want me to suck your cocks?~">>
<<video "img/ella/jamal/threesome-3.mp4">>
<p>You must admit that Ella looks great, worshipping your black dicks. Her tongue explores your manhoods as if comparing them and then sucks them one after another.</p>
<<speech "Jamal" "She loving it!">>
<<speech "Ella" "~Why wouldn't I enjoy it~">>
<p>She'll enjoy it even more when you get to the main action for tonight. Who should go first?</p>
<<link "You, her black bf" "EllaJamalThreesome_2">>
<<set $ella_mmf_stage = 3>>
<</link>>
<<link "Treat Jamal with going first" "EllaJamalThreesome_2">>
<</link>><<if $ella_mmf_stage == 3>>
<<video "img/ella/jamal/threesome-5.mp4">>
<p>Ella gets on top and starts riding you, before offering her mouth to serve Jamal's dick. He grabs her hair and pushes deep inside her mouth while you grope Ella's butt and fuck her burning-hot pussy. You feel weirdly proud noticing how Jamal gets mesmerized by the rhythmic bouncing of your girlfriend's ass...</p>
<<else>>
<<video "img/ella/jamal/threesome-4.mp4">>
<div class="text">You lean back, inviting Ella for a blowjob.</div>
<<speech "Ella" "I'm gonna suck that cock while I'm getting fucked~">>
<<speech "You" "Yeah, I wanna watch that!">>
<p>You have a perfect view of your girl sucking your dick while getting railed from behind by your friend. She does look great serving two black dicks at once, like a natural-born snowbunny; she finally accepted that she loves being shared and enjoys every moment of it.</p>
<</if>>
<hr>
<<video "img/ella/jamal/threesome-7.mp4">>
<p>You fuck Ella non-stop, taking rests in between - either just to watch how another is bangin' her or stuff her mouth with black meat while her pussy is filled with a second dick. Ella is exhausted, but you don't remember seeing her as happy and satisfied as she is now.</p>
<<video "img/ella/jamal/threesome-9.mp4">>
<p>You could probably go on for another hour or so, but Ella doesn't need that - what she wants is a thick layer of cum on her face. You two jerk your dicks off until you unload your semen in her mouth, lips, and make her face white and messy.</p>
<<speech "Ella" "I'm so happy I'm about to cry, boys. Thank you~">>
<p>You and Jamal laugh and exchange a fistbump.</p>
<<speech "Jamal" "Thanks for the invite, man. I'm gon' let you lovebirds cuddle in this palace and bail. We had ourselves a good time, right?">>
<<speech "Ella" "~Yeeeeessss!~">>
<<speech "You" "For sure, bro. See ya.">>
[[Jamal politely leaves you alone.|EllaJamalThreesome_3]]<<pic "img/ella/jamal/cuddle.webp">>
<p>You spend some time alone, processing the threesome. You were afraid that some jealousy or other strong emotions would blur the experience, but all you feel is bliss and calm.</p>
<<speech "Ella" "You're good?">>
<<speech "You" "I think so. I'm kinda surprised about it, even. And you?">>
<<speech "Ella" "Oh... same. It was overwhelming, but... just wow.">>
<<if $savannah_approach == 2>>
<<speech "Ella" "I imagined it is more rough, given how you treated that bimbo for the video.">>
<<speech "You" "I told you it is different. But I wasn't sure about Jamal, though. He's more... stereotypical, I thought.">>
<<speech "Ella" "Yeah, he can be gentle and passionate.. weird, right? How easily we attribute stereotypes even to those we know.">>
<</if>>
<p>You giggle together and cuddle some more. Eventually, you'll have to leave this bed, but for now, it has everything you need in the world - each other.</p>
<<set $ella_mmf_stage = 4>>
[[Return to the real world.|The Hood]]<p>Ella is taking a breather between her duties - a good opportunity to talk about some topics stuck in your head since you began self-study.</p>
<<speech "You" "Hey, I've been picking up some books lately... The more I learn, the more questions I have. I'm feeling like I know even less about the world now.">>
<p>Ella chuckles.</p>
<<speech "Ella" "I get your frustration, but having questions is great - it means you are processing the ideas you learn about. Anyway, what do you want to talk about?">>
<div class="text">You choose economics. For your whole life, you knew that the system you live under is not fair, but you never thought about the alternatives; the word "socialist" was a slur among your brothers in arms. But now you learn about the other options - and have so many questions.
Discussing them, you learn another side of Ella - an intelligent, confident woman openly enjoying the conversation. Looking at her explaining why capitalism is inherently flawed, you suddenly feel even more attracted to this redhead librarian.</div>
<<speech "You" "If we all know that the game is rigged - why do we go along?">>
<<speech "Ella" "Most of us just can't imagine a world without it. We are conditioned to believe that the system is the only way, and that we have to work within it to survive. It's designed to keep us in line, to keep us too busy and too exhausted to question it.">>
<<speech "You" "The guy working triple shifts just to afford insulin does not think outside the box - he's thinking about not dying.">>
<p>Ella leans in closer as if to deliver the final message.</p>
<<speech "Ella" "Exactly. The system is designed to make us think that we have no choice, that we are powerless. But the truth is, we have more power than we realize. We just need to wake up and see it.">>
<p>She looks so sexy when she drops the truth bombs that you can't resist leaning in for a kiss. Does she enjoy showing off her intelligence as much as you enjoy admiring it? Making out with her feels different as if having an intellectual conversation was an excellent prelude.</p>
<<video "img/ella/conception/1_kiss.mp4" >>
<p>The heat from her body makes you crazy, and at the same time, you want to savor this intimate moment. There is nowhere to rush; only you two exist in the broken capitalist world. You thoroughly explore Ella's body before stopping at the tastiest part.</p>
<<speech "Ella" "Mmmm, what's wrong with you today...">>
<<video "img/ella/conception/2_closer.mp4" >>
<p>Licking juicy ginger pussy is always fun, but you want to look into her intelligent eyes and admire the view of gorgeous beauty with wide-spread legs. Your massive dick effortlessly slides into her wet pussy; she is yours - as much as you are hers.</p>
<<video "img/ella/conception/3_missionary.mp4">>
<p>It's not enough - you want to become one, unite your bodies through passionate lovemaking; you embrace Ella in your strong hands, kiss her, lick her, love her. Fleeting moments like that are the only time you can truly be open with someone.</p>
<<video "img/ella/conception/4_missionary2.mp4">>
<p>You pick up the pace; losing yourself in this intimate intercourse, you miss the moment when it is time to pull out. And how could you break this bond that was forming between you? No, the only way to finish this sex was to give Ella every last drop of your semen; your dick swell and pump her pussy full of your cum.</p>
<<video "img/ella/conception/5_cum.mp4">>
<<speech "Ella" "So... much... cum... Boy, you're cumming like a firehose.">>
<<speech "You" "Shit, I'm sorry, Ella, I...">>
<<speech "Ella" "Shh, don't worry about it. It will be fine.">>
<<pic "img/ella/conception/creampie.jpg">>
<p>For some time, you cuddle together, prolonging the sweet post-coital blissfulness. Your cum is slowly leaking out of Ella's pussy when she starts talking again:</p>
<<speech "Ella" "I wish I could see more of this side of yours. Gentle, caring, loving.">>
<<speech "You" "What do you mean?">>
<<speech "Ella" "You push yourself into these stereotypes to achieve your goals, stereotypes born out of other people's insecurities, and I'm afraid you can forget who you really are.">>
<<speech "You" "It's just a role I have to play...">>
<<speech "Ella" "But you enjoy it, do you?">>
<p>You feel annoyed about her trying to get into your head.</p>
<<speech "You" "Didn't you enjoy it when I choked you with my big black cock, huh?">>
<<speech "Ella" "You know what I'm talking about. Please, don't forget to stay yourself, that's all.">>
<p>She gets up and stretches her back, and the flow of cum starts flowing down her thigh.</p>
<<speech "Ella" "I need to get back to my work. Let's hope you didn't knock me up, haha.">>
<<set $ella_stage to 12>>
[[Haha...|Community Center]]<<pic "img/ella/library_new_stage_1.jpg">>
<p>You find Ella at the library site in the middle of the day - and for a moment you almost don't recognize her sober. She is still smokin' hot, with her working shorts barely able to contain her plump butt. Nevertheless, she is busy gathering the materials and trash around the site. She's even made a table out of a plank and two sawhorses, and on it sit two paper cups of coffee. Two.</p>
<<speech "Ella" "The bartender said you come by mornings sometimes. So I've been buying two coffees and drinking both. Today you get yours.">>
<p>The coffee is terrible. You drink it slowly anyway, while she walks you through the building like a surgeon presenting a patient - what's structural, what's cosmetic, which walls carry weight and which just carry graffiti.</p>
<<speech "Ella" "My grandmother cleaned offices so my mother could finish school. My mother taught third grade for thirty years so I could do a degree in library science - which everyone agreed was hilarious. A librarian, from this block.">>
<p>She runs a thumb along a scorched shelf edge, not looking at you.</p>
<<speech "Ella" "Three generations to build a person who believes in books. One night for those animals to burn the building down. Funnily enough, the Oath Boys filed the complaint themselves. 'Unregistered assembly' - my literacy classes, the tenant meetings. They wrote the paperwork in the morning and came back with the Molotovs at night. And everyone keeps asking me why I don't leave - I can't explain that leaving would be the actual fire.">>
<p>She catches herself, laughs, embarrassed at the speech. You tell her you understand - and, unusually for the things you say in this neighborhood, it's the truth. You talk for an hour about nothing that matters: books you pretended to have read, the bartender's mysterious cat, which of the militia at the blockpost is scared of dogs. When you leave, she's still working.</p>
<<speech "Ella" "Hey. Thank you for the other night. For putting me in that taxi and asking for nothing. I remember more of it than I let on.">>
<<nobr>>
<<set $ella_stage = 3>>
<<set $ella_next_day = $day + 1>>
<<statchange "respect" 1>>
<</nobr>>
[[Back to the renovation|Community Center]]<<pic "img/ella/library_new_stage_2.jpg">>
<p>Salvage day. Ella has commandeered you for the worst job in the building: going through the charred pile in the main hall, deciding book by book what can be saved. She has a system - three stacks, "lives," "dies," and "we'll see" - and absolute authority over all appeals.</p>
<<speech "Ella" "You keep putting things in 'lives' out of sentiment. That's not how triage works, soldier.">>
<p>It's slow, filthy work, and it becomes a game without either of you deciding it should: she reads out the worst surviving sentence from every ruined romance novel in a solemn newsreader voice; you construct increasingly criminal defenses for books she's sentenced to death. By afternoon your hands are black to the wrist and your face aches from laughing quietly - the way people laugh in a building they're mourning.</p>
<p>Late in the day she goes still. In her hands is a picture book, half its cover gone, the remaining half showing a paper sun. She turns it over twice.</p>
<<speech "Ella" "I used to read this one to the after-school kids. Same voice for the wolf every time - they'd riot if I changed it. Some of those kids' families are gone now. Relocated, detained, who knows.">>
<p>You take the book from her hands, gently, and put it in the "lives" stack. No argument this time. She looks up at you, dust in the light between you, and for one long moment the room leans - her eyes drop to your mouth, and yours to hers, and the whole afternoon narrows to the six inches separating you.</p>
<p>Then a shelf settles somewhere with a bang like a shot, and you both flinch, and laugh, and the moment folds itself away - not gone. Filed. In the "we'll see" stack.</p>
<<speech "Ella" "Okay. Okay, back to work, mister. This library won't resurrect itself.">>
<<nobr>>
<<set $ella_stage = 4>>
<<set $ella_next_day = $day + 2>>
<<statchange "respect" 1>>
<</nobr>>
[[Back to the renovation|Community Center]]<p>Opening day empties out slowly - neighbors, kids, the old men who came to argue about chess and stayed to argue about everything. Ella works the room the whole evening, lit up like the building itself. As you're about to slip out with the last of them, her hand catches your sleeve.</p>
<<speech "Ella" "Not you. Stay. Help me... close up.">>
<p>The lock clicks. The library goes quiet the way a church goes quiet. She walks back to you down the center aisle, unhurried, and stops close - that same six inches from the salvage day, and this time nothing bangs, nothing interrupts, and neither of you flinches.</p>
<<speech "Ella" "I've been thinking about that kiss for two days. And I'm completely sober, mister High Morals, so you're out of excuses.">>
<p>You close the distance. This kiss is nothing like the first one - no audience of one, no occasion. It's slow and greedy at the same time, her fingers hooking into your waistband like she's been rehearsing the move against the bookshelf of her mind.</p>
<<speech "Ella" "Do you think I'm able to consent to kiss that big hard thing in your pants?">>
<<speech "You" "You have a green light on that, miss.">>
<p>You chuckle and exchange one more kiss before Ella kneels before you, right there between "History" and "Poetry," her eyes never leaving yours as she works your belt open.</p>
<<video "img/ella/first_reveal.webm" >>
<<speech "Ella" "HOLY SHIT, fuck, I mean, I did not expect anything less, but...">>
<<speech "You" "Shhh. Remember why you're down there.">>
<<video "img/ella/first_blowjob.webm" >>
<p>Ella gently kisses the tip of your dick before attempting to go deeper on your shaft. Her tiny mouth is not made for accommodating something big as your black cock, but her continuous tongue work on your glans makes that unnecessary. This - and the sheer passion and tension built up between you since the salvage pile, in coffee cups and book dust and interrupted moments.</p>
<<video "img/ella/first_facial.webm" >>
<<speech "You" "Hey, I think I'm... Let me...">>
<p>Feeling your orgasm approaching, you take matters into your own hands and finish on Ella's face, spraying your thick cum all over her. A few drops land on her tongue, and she satisfyingly licks it all up.</p>
<<speech "Ella" "Promise me that next time your cum will be inside of me - one way or another, will you?">>
<p>You nod, still catching your breath. Just now, you realize that while having sex, you haven't been intimate with someone for a very long time. With Ella, there is a connection - built the slow way, which is the only way anything gets built in this neighborhood. You like it. You like her.</p>
<<set $ella_stage = 6>>
[[Back to the real world|The Hood]]<<nobr>><<set _choiceMade = false>>
<div id="choice-container">
<<if not _choiceMade>>
Option 1: Condemn monogamy and propose the open relationships<br>
<<if $knowledge < 10>>
<div class="req">You need 10 knowledge to convince Ella.</div>
<<else>>
<<linkreplace "Go with that">>
<<set _choiceMade = true>>
<<replace "#output">>
<p>Thanks to your knowledge, you can come up with the right words to convince Ella to give open relationships a try.</p><br>
<<speech "Ella" "I'm relieved to know that you know some theory behind polyamory; and I think we can always talk when someone will feel uncomfortable.">><br>
<p>Well... are you feeling comfortable about the possibility of Ella having sex with someone else?</p><br>
<<speech "Ella" "Relax, I don't need anyone else but you - at least for now, hihi.">><br>
<<if $savannah_approach == 2>>
<<speech "Ella" "Although... I must admit the way you double-teamed that policeman's wife left a deep impression on me. I would like it if you bring your friend next time.">>
<<else>>
<<speech "Ella" "Although, maybe I'd like to share someone with you together. I've heard threesomes are fun, right?">>
<</if>>
<<set $ella_stage = 11>>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Go with that"</em></div><</replace>>
<</linkreplace>><</if>><br>
Option 2: There is no way you can give up what you do; the honest way is to stop seeing each other.<br>
<<linkreplace "Break up">>
<<set _choiceMade = true>>
<<replace "#output">>Please, don't. You'll break her heart, and yours too.<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Break up"</em></div><</replace>> <!-- Hides both choices -->
<</linkreplace>><br>
Option 3: Let's run away<br>
<<linkreplace "And start a new life">>
<<set _choiceMade = true>>
<<replace "#output">>
This will lead to an ending. Do you want to give up everything for Ella? [[Yes|EllaEnding]]<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"And start a new life"</em></div><</replace>> <!-- Hides both choices -->
<</linkreplace>><br>
<</if>>
</div>
<div id="output"></div>
<</nobr>>/* Ella after Swap Night. Gate: her arc at 12, the night done ($william_stage 6)
and Pollock's finale done on either route ($pollock_stage 4). No cost at the
top: the sad exit charges 1, the couch scene (Ella After Vegas Sex 1) charges
3, so the hub asks for 3. What he tells her about the school picks the exit
and, on the way to the couch, the tone ($ella_swap_verdict). */
<<if $energy < 3>>
<p>You'd turn up on her doorstep with nothing left to give her. Sleep first.</p>
[[Back|The Hood]]
<<else>>
<p>Ella's flat is above a shuttered pawnshop two streets from the library, up a stairwell that smells of somebody else's cooking. You've delivered her to the bottom of it in three taxis and never once been asked up, and hesitate before knocking.</p>
<<pic "img/ella/first_meeting.jpg">>
<p>She's in her usual sweater and nothing else that you can see. Behind her is one room and a lot of daylight. A white couch, a kettle on the floor by the socket, a stack of books doing the job of a table, and the kind of nothing that isn't a style choice.</p>
<<speech "Ella" "Don't. I know. The Oath Boys did the flat the same week they did the library.">>
<<speech "You" "You never told me they got your place too.">>
<<speech "Ella" "You never told me a lot of things, soldier. Sit. We need to talk.">>
<p>She folds up at the far end of the couch and for a minute she just grins at you, then at the ceiling, then at you again.</p>
<<speech "Ella" "Okay. First of all. How cool that night with the Vegas was, right? A bottle that costs what you make in a month of lifting boxes. A rich woman saying my name like she was trying it on in a shop.">>
<<speech "Ella" "I bet they'd love to see us again, but I'm not doing it.">>
<<speech "Ella" "Not because it wasn't lovely. Because it wasn't mine. William said it at the end, when he thought we were asleep. What a wonderful escape. That's the word, isn't it? You can't live in an escape, you can only visit one. And our place is here, like it or not.">>
<p>The grin comes back, wider and worse.</p>
<<speech "Ella" "Also, I sat on the face of a fucking Vega. The foundation that turned this library down four times, in writing, on very nice paper, and I sat on it and it thanked me. I peaked, mister. Let me have it.">>
<p>She laughs at herself, and doesn't quite finish the laugh.</p>
<<speech "Ella" "There was a second thing, though. About you.">>
<<speech "Ella" "William called you $real_name, and then he used $player_name. And every time he looked at you afterwards, it was like he'd dropped something. So which name is real?">>
<<speech "Ella" "A man with a name for every room.">>
<<speech "You" "One of them is mine.">>
<<speech "Ella" "I know. I'm not asking which. I decided on that balcony some time ago that I'd take the part of you I'm allowed to have, and I'm not going back on it. It's just that some days I do the sums, and every time I learn something new about you the total goes down, and I know even less about who you really are.">>
<<speech "Ella" "Like the school. I understand there's a reason you mop floors for children who'd cross the road from you, and I don't need to know it. But I can't connect the man I know with the things I hear about him from other people, and it makes me sad.">>
<p>You can't - shouldn't - involve her any more than she already is. And she knows that.</p>
<<speech "Ella" "Right. Enough. Change of subject.">>
<p>She uncurls, scoots down the couch till her knee is against your thigh.</p>
<<speech "Ella" "Tell me who you fuck.">>
<<speech "You" "Ella.">>
<<speech "Ella" "Don't give me that face, I like it. I've made my peace with it and then some. I've still got the policeman's wife on my phone, and I still watch it, and I'm still jealous, and I still come. So.">>
<p>Her knee presses harder.</p>
<<speech "Ella" "Not photos, I don't want to see them. I want to hear you tell it. Tell me what that school gets.">>
<<set _choiceMade = false>>
<div id="choice-container">
<<if not _choiceMade>>
<<if $amber_stage >= 3>>
<<linkreplace "The counselor">>
<<set _choiceMade = true>>
<<replace "#output">>
<p>You give her Britney Amber. Blonde, mid-thirties, a pencil skirt that loses the fight every morning, the school counselor who handles every harassment complaint in the building and told you on day one that you could report her to her. The couch in her office. The blinds. The sign on the door turned to SESSION IN PROGRESS, and the box of tissues she keeps for crying students and what it gets used for after.</p>
<<speech "Ella" "A counselor. With a couch. Who's her own complaints department.">>
<<speech "You" "She calls it the treatment plan.">>
<<speech "Ella" "Stop. No, don't stop. Does she keep her heels on? She keeps her heels on. God. She hands out pamphlets about self-respect and then she's on her knees on her own carpet for the man who hoovers it. I could write her, what a character.">>
<<if $amber_atm >=2>>
<p>You tell her that she enjoys taking your dick from her ass straight to her mouth.</p>
<<speech "Ella" "Eeeeeew.">>
<<speech "Ella" "But I respect her for cleaning after herself.">>
<</if>>
<p>She's gone pink from the collarbone up, and her hand has found your thigh the way it did at the bar the night she offered you a handjob she couldn't have stood up to deliver, and she's sober now, which makes it worse.</p>
<<speech "Ella" "I will be your next one. Show me how you treat bad bitches.">>
<<set $ella_swap_verdict = 3>>
[[Show her|Ella After Vegas Sex 1]]
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"The counselor"</em></div><</replace>>
<</linkreplace>><br>
<</if>>
<<linkreplace "The principal">>
<<set _choiceMade = true>>
<<replace "#output">>
<<if $pollock_route == 2>>
<p>You give her Shannon Pollock. Fifty-one, runs the district, a governor on her wall, whole shebang. Then the drive to her house in broad daylight, and the principal herself standing in the middle of her own living room with no idea where to put herself.</p>
<<if $pollock_home_cuck >= 2>>
<p>And the husband. You tell her about Marcello, and the reading chair dragged across the carpet to face the couch, and the man of the house sitting in it with his knees together saying thank you.</p>
<<speech "Ella" "He thanked you.">>
<<speech "You" "Twice. Then he drove me home.">>
<<else>>
<p>And the husband sent upstairs, and what she came back down in. White lace, bought for it, and the way she crawled across her own carpet in it because you were sitting in the middle of her couch and hadn't got up.</p>
<<speech "Ella" "She crawled.">>
<<speech "You" "She'd have jumped if I'd asked.">>
<</if>>
<<speech "Ella" "I'm getting wet. You ruined my panties, bastard.">>
<p>She's pink to the collarbone and not hiding it, and her hand has been on your thigh since the drive.</p>
<<speech "Ella" "Your stories make me all wet and ready. Show me how you treat bad bitches.">>
<<set $ella_swap_verdict = 3>>
[[Show her|Ella After Vegas Sex 1]]
<<else>>
<p>You give her Shannon Pollock. Fifty-one, runs the district, a governor on her wall. What you found on her, and what she offered instead of a fight. Room 214, three eighteen-year-olds standing up when she walked in.</p>
<<speech "Ella" "You didn't stay.">>
<<speech "You" "It wasn't mine to run.">>
<<speech "Ella" "Whose was it?">>
<p>You tell her whose. The club. The boys you supervise in a basement room, the ones who lived on the forums until you gave them something better to want, and what you taught them to want. She listens to the whole thing with her knee against your thigh, and by the end of it the knee is gone.</p>
<<include "Ella After Vegas Sad">>
<</if>>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"The principal"</em></div><</replace>>
<</linkreplace>><br>
<<if $incel_stage >= 5>>
<<linkreplace "The club">>
<<set _choiceMade = true>>
<<replace "#output">>
<<if $incel_path == 1>>
<p>You give her room 021. Four black boys who lived on the incel forums until you took over their detention. Sessions about loneliness and rejection and the way the forums turn every bad day into proof.</p>
<<speech "Ella" "Wait. Wait. This is what you do at the school. This is the secret. You run a support group for sad boys.">>
<<speech "You" "It's not a...">>
<<speech "Ella" "It's a support group for sad boys. Oh my God. And Devin. William said Devin has stories now, in the car, he said it like a man whose son got a new lung. That's you. That was you, and you let me think it was all skirts.">>
<p>She's laughing, and then she isn't, and she's looking at you the way she looked at the picture book with the paper sun.</p>
<<speech "Ella" "That's the most you thing I've ever heard. Not the sergeant. Not the black seducer. You.">>
<p>She climbs across the couch into your lap, slow, the sweater riding up, nothing under it after all, and takes your face in both hands.</p>
<<speech "Ella" "Here's what I want, then. Not a treatment, not a target. I want that one. The one who bought a packet of memes for four boys who hate themselves. He's the one I'm sharing with everybody, so he can bloody well come home once in a while.">>
<<set $ella_swap_verdict = 2>>
[[Give it to her|Ella After Vegas Sex 1]]
<<else>>
<p>You give her room 021. Four black boys who lived on the incel forums until you took over their detention, and what you wrote on the blackboard the day they asked you for the secret. Then the lessons after it: the myth, the husbands who are afraid of it and want it, the wives who wonder. How to be a white man's fear and fuck his woman. How well they've learned it.</p>
<p>She listens with her knee against your thigh, and somewhere in the middle of it the knee goes away.</p>
<<speech "Ella" "Agatha said something that night, while you and William were doing the hill story again. That Devin looks at her differently now. William laughed and said it's the age. She didn't laugh.">>
<<include "Ella After Vegas Sad">>
<</if>>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"The club"</em></div><</replace>>
<</linkreplace>><br>
<</if>>
<</if>>
</div>
<div id="output"></div>
<</if>>/* Shared tail of the two stories that sink the visit (the principal on the
group route, the club on the stereotype route). Included from inside their
<<replace>>, so the only way out is the link at the bottom. */
<<pic "img/ella/leave.jpg">>
<p>She doesn't shout. You've seen her shout, drunk, at a bar, about a video. This is the other thing, the librarian voice, the one for people who've torn a page.</p>
<<speech "Ella" "I asked you something once. I asked you not to forget who you are behind the stereotype. You said it was a role.">>
<<speech "Ella" "And you went and made copies.">>
<<speech "You" "Ella, it's a means to...">>
<<speech "Ella" "I've never once asked you what it's a means to. I'm asking what it's doing to you, and you've just told me, and you were proud.">>
<p>She stands up, which in this room means she's three steps from you in any direction, and stops by the window with her back to the light and her arms wrapped over the sweater.</p>
<<speech "Ella" "An hour ago I knew several names for you and I thought that was the problem. Turns out names aren't the problem - you are. That's a lot to find out before lunch, and I'd rather find out the rest of it by myself.">>
<<speech "Ella" "Please. I'm not throwing you out, I'm asking you to go. I need to think about what you said.">>
<p>You let yourself out, and the deadbolt goes across behind you before you've reached the first landing, and the stairwell still smells of somebody else's cooking.</p>
<<set $ella_swap_verdict = 1>>
<<set $ella_stage = 13>>
<<statchange "energy" -1>>
[[Leave her alone|The Hood]]/* Head of the couch scene: energy is charged once here. Clips are
img/ella/post_4some_<N>.mp4, 1-5 in this passage and its included bodies,
6-11 in Ella After Vegas Sex 2. Tone comes from $ella_swap_verdict
(3 = she asked to be the next target, 2 = she asked for him): it puts the
rough option first at the two junctions here and colours her lines. The
clips are the same either way. The junction bodies are separate passages
(Mouth Rough/Soft, Behind, Pin Rough/Soft) only so the two orderings don't
duplicate them; they're <<include>>d, never linked. */
<<statchange "energy" -3>>
<<set _target = $ella_swap_verdict == 3>>
<<if _target>>
<p>The sweater goes over her head and lands on the kettle. She kneels up on the couch and looks at you over her shoulder while you strip, and she doesn't help, she watches, the way she'd watch you take apart a sentence.</p>
<<speech "Ella" "How do they start? Your targets. On the couch or on the floor? I want it done properly.">>
<<speech "You" "On their knees.">>
<p>She turns around. On all fours on the white couch with her back arched and her ass up, small tits hanging, and her mouth open before you've stepped up to it.</p>
<<else>>
<p>The sweater comes off slowly, and she folds it, which is the most Ella thing that will happen in the next hour, and sets it on the stack of books. Then she kneels up on the couch and pulls you in by the belt.</p>
<<speech "Ella" "Stay in the room this time. That's all I'm asking. Whoever you are for them, you're you for this.">>
<<speech "You" "I'm here.">>
<p>She kisses you once to check, then drops to her hands and knees on the white couch, back arched, small tits hanging, ass up, and looks back over her shoulder to see if you're still there, and you are.</p>
<</if>>
<<video "img/ella/post_4some_1.mp4">>
<p>You stand naked beside the couch and she takes you into her mouth from all fours, and the same thing happens that always happens, which is that she gets the head in and stalls. Her jaw is too small for it and always was. She works around the problem instead of through it: lips stretched white around the crown, tongue busy underneath, one hand pumping the length she can't reach, spit running off her chin onto the cushion. Every few strokes she tries for more and gags on the attempt and goes back to what works, and the mascara runs a little further each time.</p>
<<set _choiceMade = false>>
<div id="choice-container">
<<if not _choiceMade>>
<<if _target>>
<<linkreplace "Take her head">>
<<set _choiceMade = true>>
<<replace "#output">><<include "Ella After Vegas Mouth Rough">><</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Take her head"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Let her work at it">>
<<set _choiceMade = true>>
<<replace "#output">><<include "Ella After Vegas Mouth Soft">><</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Let her work at it"</em></div><</replace>>
<</linkreplace>>
<<else>>
<<linkreplace "Let her work at it">>
<<set _choiceMade = true>>
<<replace "#output">><<include "Ella After Vegas Mouth Soft">><</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Let her work at it"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Take her head">>
<<set _choiceMade = true>>
<<replace "#output">><<include "Ella After Vegas Mouth Rough">><</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Take her head"</em></div><</replace>>
<</linkreplace>>
<</if>>
<</if>>
</div>
<div id="output"></div><<video "img/ella/post_4some_2.mp4">>
<p>You take her head in both hands, get your feet set and use her mouth like it's the only hole she's got. Not deep, she hasn't got deep, but you take all the room there is and a bit past it, her nose flattening against you, her throat clenching around the crown and refusing it and getting it anyway. She gags, wet and loud, spit sheeting off her chin onto the white cushion; her hands come up to your thighs and don't push. You give her air on your schedule, and every time you pull out she gasps and opens up again before you've asked.</p>
<<if _target>>
<<speech "Ella" "~Ish that... hkk... ish that what she got?~">>
<<speech "You" "That's what they all get.">>
<<else>>
<<speech "Ella" "~Okay. Okay, that one's still you. I checked.~">>
<</if>>
<p>She's a mess by the time you let go. Mascara in two black lanes down to her jaw, lips swollen, a string of spit from her bottom lip to your cock that she wipes with the back of her hand and then licks off the hand.</p>
<<linkreplace "Get behind her">><<include "Ella After Vegas Behind">><</linkreplace>><p>You keep your hands off her and let her fight it herself. She sets a pace, a slow one, and loses to your size in the same place every time: the head, the stall, the stubborn extra inch she goes for and gags on, over and over, because nobody is making her and she goes for it anyway. The white cushion under her chin is soaked. When she comes up for air her eyes are streaming and she's grinning around it.</p>
<<if _target>>
<<speech "Ella" "~I'll get there. Give me a year and a manual.~">>
<<else>>
<<speech "Ella" "~Don't help. I want to know I did it.~">>
<</if>>
<<linkreplace "Get behind her">><<include "Ella After Vegas Behind">><</linkreplace>>/* Clips 3-4 and the second junction, included from both Mouth bodies. */
<<video "img/ella/post_4some_3.mp4">>
<p>You come round behind her and kneel, and she knows what's coming and spreads her knees on the cushion for it without being told. That ass. Pale and round and too big for the rest of a tiny white girl; you spread it with both thumbs and put your face in it. Tongue flat across her asshole, then pointed, then flat again, her whole body jerking forward on the first pass and pushing back into your mouth on the second, her pussy dripping onto your chin below. She makes a sound into the cushion that isn't a word.</p>
<p>Then you sit back on your heels, dick standing, and don't move. She works it out fast. She crawls backwards down the couch toward you, chest low, that big bubble ass swaying at eye level, looking back under her arm to aim, and you let her come the whole way herself.</p>
<<video "img/ella/post_4some_4.mp4">>
<p>She backs onto you. The head goes in with a wet give and the rest follows because she doesn't stop, doesn't wait, just keeps pushing until her ass is flush against your hips and she's got all of it, tiny pussy stretched white around the base and dripping down your balls. Then she starts fucking herself on it. Short hard shoves, her hands fisted in the cushion for leverage, that ass rippling every time it hits you. You let her do the work for a while for the view alone, then bring your palm down on one cheek hard enough to leave a print, and she yelps and goes faster, so you do it again and meet her, and the two of you slam together hard enough to walk the couch an inch across the floor.</p>
<<if _target>>
<<speech "Ella" "~Harder. She got harder than this, I know she did.~">>
<<else>>
<<speech "Ella" "~There you are. There you are.~">>
<</if>>
<div id="choice-2">
<<if _target>>
<<linkreplace "Lock her arms and pin her down">>
<<replace "#output-2">><<include "Ella After Vegas Pin Rough">><</replace>>
<<replace "#choice-2">><div class="choice-made"><em>"Lock her arms and pin her down"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Keep the rhythm">>
<<replace "#output-2">><<include "Ella After Vegas Pin Soft">><</replace>>
<<replace "#choice-2">><div class="choice-made"><em>"Keep the rhythm"</em></div><</replace>>
<</linkreplace>>
<<else>>
<<linkreplace "Keep the rhythm">>
<<replace "#output-2">><<include "Ella After Vegas Pin Soft">><</replace>>
<<replace "#choice-2">><div class="choice-made"><em>"Keep the rhythm"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Lock her arms and pin her down">>
<<replace "#output-2">><<include "Ella After Vegas Pin Rough">><</replace>>
<<replace "#choice-2">><div class="choice-made"><em>"Lock her arms and pin her down"</em></div><</replace>>
<</linkreplace>>
<</if>>
</div>
<div id="output-2"></div><<video "img/ella/post_4some_5.mp4">>
<p>You catch one wrist, then the other, and lock both behind her back in one fist. The other hand goes flat on the back of her head and pushes her face into the cushion, and one finger hooks into her mouth from the side; she bites down on it and sucks. Pinned at both ends, ass up, nowhere to go, and you fuck her like that, long and hard, every thrust rocking her face deeper into the white cotton. She's saying something. She keeps saying it, wet around your fingers, and it takes you three strokes to make it out.</p>
<<speech "Ella" "~Yesh... pleashe... I want moree...~">>
<p>You give her more. She comes on it with her arms still locked and her mouth still full, a long shuddering clench that milks you, and when you finally let her wrists go they stay where you left them for a second, like she'd forgotten she had them.</p>
<<if _target>>
<<speech "Ella" "~I'm just another conquered slut~">>
<<else>>
<<speech "You" "Still me.">>
<<speech "Ella" "~I know. I can tell. Don't stop.~">>
<</if>>
[[Turn her over|Ella After Vegas Sex 2]]<p>You keep the rhythm instead. One hand on her hip, the other wrapped round to her clit, deep even strokes, and you leave her her hands, which she uses to reach back and hold your thigh like she's afraid you'll go somewhere. She comes like that, forehead on the cushion, quiet, a long shudder that clamps down on you from root to tip and doesn't let go till she's done.</p>
<<speech "Ella" "~Okay. Okay, okay. Turn me over. I want to see you.~">>
[[Turn her over|Ella After Vegas Sex 2]]/* Second half of the couch scene: clip 6, then the optional worship (7-8) and
lift (9) segments, in that order or either alone, then the finish (10-11 and
the aftermath) via Ella After Vegas Finish. */
<<set _target = $ella_swap_verdict == 3>>
<<video "img/ella/post_4some_6.mp4">>
<p>You flip her onto her back on the couch, hook one leg over your arm and push it up toward her shoulder, and go in again from above with her folded open under you. Deeper this way. You can see it in her face when you bottom out, her eyes going wide and unfocused at the ceiling, her mouth open on nothing; then her hand slides down between you and she starts rubbing her clit in fast little circles while you fuck her, not shy about it, chasing it.</p>
<<if _target>>
<<speech "Ella" "~Do they get this? Do you look at them like this?~">>
<<speech "You" "No.">>
<<else>>
<<speech "Ella" "~Hi.~">>
<<speech "You" "Hi.">>
<</if>>
<p>She comes a second time with her heel drumming your back and her hand still working, and you pull out before you follow her, because you're not done with her mouth.</p>
<div id="choice-container">
<<linkreplace "Sit back and let her worship">>
<<replace "#output">>
<<video "img/ella/post_4some_7.mp4">>
<p>You sit on the edge of the couch with your legs spread wide and she slides off onto the floor and lies on her belly between them, chin on the cushion edge, and goes to work on your cock like she's got all afternoon. Kissing up the shaft. Licking the taste of herself off it. Then she gets ambitious again, lines up the head and pushes, and gets exactly as far as she's ever got before the gag, and tries again, and again, tears cutting clean tracks through the mascara, and it's almost sweet, a woman this stubborn losing to something this simple. You tell her so. She flips you off without taking it out of her mouth.</p>
<<video "img/ella/post_4some_8.mp4">>
<p>Then she gives the head up as a lost cause and goes lower. Nose in your balls, sweaty from the work, and she doesn't care, she moans into them; and here she has more luck. One drawn into her mouth whole and rolled on her tongue while her fist keeps the shaft busy above, then the other, cheeks hollowing, looking up at you the whole time with a face that says this part she can do.</p>
<div id="choice-2">
<<linkreplace "Pick her up">>
<<replace "#output-2">><<include "Ella After Vegas Lift">><<include "Ella After Vegas Finish">><</replace>>
<<replace "#choice-2">><div class="choice-made"><em>"Pick her up"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Back on the couch">>
<<replace "#output-2">><<include "Ella After Vegas Finish">><</replace>>
<<replace "#choice-2">><div class="choice-made"><em>"Back on the couch"</em></div><</replace>>
<</linkreplace>>
</div>
<div id="output-2"></div>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Sit back and let her worship"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Pick her up">>
<<replace "#output">><<include "Ella After Vegas Lift">><<include "Ella After Vegas Finish">><</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Pick her up"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Straight back to the couch">>
<<replace "#output">><<include "Ella After Vegas Finish">><</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Straight back to the couch"</em></div><</replace>>
<</linkreplace>>
</div>
<div id="output"></div><<video "img/ella/post_4some_9.mp4">>
<p>You reach down, get her under the arms, and stand up with her. She squeals, then works out where she's going and stops. Upside down against your chest, thighs over your shoulders, her ass in your hands, her pussy in your face and your cock hanging straight down into her face. You put your mouth on her and she puts hers on you, and gravity does what her jaw never could: with her head hanging she takes you deeper than she ever has, deeper than the hotel, deeper than the library floor, a long choking slide she makes a noise about and doesn't stop. You eat her out with her whole weight in your hands and her throat working on you, and she's soaked, and you're the one who nearly loses it first.</p>
<p>You turn her the right way up before that happens. She's laughing, red-faced and dizzy and dripping, and she grabs your face and kisses you with the taste of both of you in it, and her hand finds your cock between you and keeps stroking it, slow, the whole time you make out.</p>
<<if _target>>
<<speech "Ella" "~Did any of them get carried? Tell me none of them got carried.~">>
<<speech "You" "None of them.">>
<<else>>
<<speech "Ella" "~I missed you, YOU, so much.~">>
<</if>>/* Clips 10-11 and the aftermath. Included at the end of every path through
Ella After Vegas Sex 2; this is where the visit closes her arc at 13. */
<<video "img/ella/post_4some_10.mp4">>
<p>Back on the couch, and this time there's nothing careful left. You put her on her knees with her face down in the cushion and her ass in the air and take her from behind like a jackhammer, hips slapping her cheeks red, her wet pussy making a noise on every stroke that the pawnshop downstairs could probably hear. She stops making words, then sounds, and then her hand slaps the cushion twice, tapping out or asking for more, you can't tell and you don't stop, and your balls draw up with about three strokes left in you.</p>
<<video "img/ella/post_4some_11.mp4">>
<p>You pull out. She's off the couch and onto her knees on the floor, mouth open, both hands on your thighs, and you put the head on her tongue and unload. She swallows as it comes, throat working, and doesn't lose a drop, and when you're done she stays there and cleans you: tongue around the glans, slow, then down the shaft and back up, thorough, like she's checking her work. She looks up. Mascara to her jaw, lips swollen, spit and cum shining on her chin, and satisfied all the way through.</p>
<<if _target>>
<<speech "Ella" "So. Do I outrank her now?">>
<<speech "You" "Who?">>
<<speech "Ella" "Whoever's next.">>
<<speech "You" "You always do.">>
<<else>>
<p>She stays on the floor with her back against the couch and her head on your knee, breathing, and neither of you gets up, because there's nowhere in this room to get up to.</p>
<<speech "Ella" "Tell me one true thing. Not a name, I don't want the name. Something small.">>
<p>You think about it. Then you tell her about the time your brother saved your life during a mountain hike. You almost forgot about that incident, and now realize this is why you're doing what you're doing now.</p>
<<speech "Ella" "There. See. That was free. That cost you nothing and I get to keep it.">>
<<speech "Ella" "Thank you.">>
<</if>>
<<set $ella_stage = 13>>
[[Home|The Hood]]<p>Scenes you have already seen, and a count of the ones you have not. Nothing here spoils what is still locked. Random or repeatable scenes are not included if they can still be accessed in-game. After completing a story path, you can unlock scenes from its other path.</p>
<p class="req">Replaying a scene changes nothing - your money, your stats and the day you are on are all put back the moment you leave it. Saving is disabled while a replay is running.</p>
<<gallerygrid>>
<br>
[[Return to the game|The hideout]]/* Developer tool, deliberately unlinked - no player-facing route reaches it.
Open it from the browser console with:
SugarCube.Engine.play('Gallery Selftest')
or get the raw rows without rendering:
SugarCube.setup.gallery.selftest()
Run it after changing any storyline's gates: a failed row means that arc's
guard moved and the gallery entry's setup no longer opens the scene. */
<p>Renders every gallery entry's whole chain with its setup applied, then throws the state away. A failed row means the manifest has drifted from the story's actual gates.</p>
<<galleryselftest>>
<br>
[[Return to the game|The hideout]]/* ============================================================
Heat system widgets.
$heat (0-100) measures how much attention you've drawn from
police and militia. Doing good in the open costs heat; so does
crime. It decays by 3 each night, or 10 for a day spent laying low.
At 75+ the blockpost is closed to you: "Take the bus" is replaced by a
req line in The Hood, so the hood is the only place you can act. Story
beats that used to narrate "you lay low for a week" (Target1-4) instead
set $heat high and hand the week to the player.
<<heatpatrol>> - rolled on entering The Hood. Sets _patrol_fired.
At most one patrol event every two days, earliest on day 2
($last_patrol_day).
Light and hard bands each pick from a small pool so the system
doesn't get repetitive:
25-49: 15% light -> "Militia Toll" | "Street Drone"
50-74: 30% hard -> "Patrol Shakedown" | "Militia Pickup"
75+: 50% full sweep -> "Police Sweep"
Every hit jumps to its own passage (dilemma-style) so the event
interrupts the player instead of rendering above the hub links;
the toll passage locks its exit until a choice is made.
<<hooddilemma>> - 20% chance of a street moral dilemma when no
patrol event fired; never within 3 days of the previous one
($last_dilemma_day, library-event style), so earliest is day 3.
On a hit it jumps to the "Hood Dilemma" passage, which has no
exit link until a choice is made - the player can't walk away.
<<dilemmadone "label">> - shared choice-close for dilemmas:
stamps the choice-made line and reveals the exit link.
============================================================ */
<<widget "heatpatrol">>
<<set _patrol_fired = false>>
/* CUT: street corner is not going into the next release - protection pact disabled.
Corner protection pact: the lookout network warns you in time, cutting patrol odds while active
<<if $day < $protection_until>>
<<set _sweep_odds = 40>><<set _hard_odds = 20>><<set _light_odds = 5>>
<<else>>
<<set _sweep_odds = 50>><<set _hard_odds = 30>><<set _light_odds = 15>>
<</if>>
*/
<<set _sweep_odds = 50>><<set _hard_odds = 30>><<set _light_odds = 15>>
/* At most one patrol event every two days - once one has fired, the street's quota
of attention is spent for a day after ($last_patrol_day, same style as dilemmas).
$last_patrol_day inits to 0, so the earliest a patrol can fire is day 2. */
<<if $day >= $last_patrol_day + 2>>
<<if $heat >= 75 && random(1, 100) <= _sweep_odds>>
<<set _patrol_fired = true>>
<<set $last_patrol_day = $day>>
<<goto "Police Sweep">>
<<elseif $heat >= 50 && random(1, 100) <= _hard_odds>>
<<set _patrol_fired = true>>
<<set $last_patrol_day = $day>>
<<if random(1, 2) == 1>>
<<goto "Patrol Shakedown">>
<<else>>
<<goto "Militia Pickup">>
<</if>>
<<elseif $heat >= 25 && random(1, 100) <= _light_odds>>
<<set _patrol_fired = true>>
<<set $last_patrol_day = $day>>
<<if random(1, 2) == 1>>
<<goto "Militia Toll">>
<<else>>
<<goto "Street Drone">>
<</if>>
<</if>>
<</if>>
<</widget>>
<<widget "hooddilemma">>
<<if not _patrol_fired && $day >= $last_dilemma_day + 3 && random(1, 100) <= 20>>
<<set $last_dilemma_day = $day>>
<<goto "Hood Dilemma">>
<</if>>
<</widget>>
<<widget "dilemmadone">>
<<replace "#choice-container">><div class="choice-made"><em>"_args[0]"</em></div><</replace>>
<<replace "#dilemma-exit">>[[Back to the street|The Hood]]<</replace>>
<</widget>><<nobr>>
<<set _dilemma = random(1, 7)>>
<<switch _dilemma>>
<<case 1>>
/* The beating */
<<pic "img/general/dylemmas/beating.jpg" "story">>
<div class="text">Down the block, a cruiser sits with its doors open. Two cops have a kid - sixteen, maybe less - bent over the hood and handcuffed, and they're taking turns explaining something to him with their batons. Nobody on the street looks, but everybody sees.</div>
<div id="choice-container">
<<if $heat < 60>>
<<linkreplace "Come swinging">>
<<replace "#output">>
<div class="text">So easy to beat someone with tied hands - almost as easy as picking up a beer bottle and smashing it against a cop's head. One officer falls to the ground while the other tries to reach for his weapon - too slow, as you knock him down with a jab. You free the kid and run from the scene.</div>
<<statchange "heat" 20>>
<<statchange "respect" 10>>
<</replace>>
<<dilemmadone "Come swinging">>
<</linkreplace>><br>
<<else>>
<div class="req">You're packing enough heat already...</div><br>
<</if>>
<<linkreplace "Create a distraction">>
<<replace "#output">>
<<if random(1, 100) <= 70>>
<div class="text">From the alley you put a bottle through the windshield of a parked car and let the alarm do the talking. The cops' heads snap around; the kid is gone before they look back. You're three blocks away before they decide it isn't worth it.</div>
<<statchange "heat" 8>>
<<statchange "respect" 1>>
<<else>>
<div class="text">The bottle bounces off the roof of the car without a sound worth hearing. One cop glances over, shrugs, and goes back to work. You slip away before the glance becomes interest, jaw tight, the sound of the beating following you down the alley.</div>
<<statchange "heat" 8>>
<</if>>
<</replace>>
<<dilemmadone "Create a distraction">>
<</linkreplace>><br>
<<linkreplace "Look away">>
<<replace "#output">>
<div class="text">You turn the corner and keep walking. You memorize the officers' badge numbers. It's all you can afford tonight - and knowing that doesn't make the sound of it any easier to leave behind.</div>
<<statchange "respect" -5>>
<</replace>>
<<dilemmadone "Look away">>
<</linkreplace>>
</div>
<div id="output"></div>
<<case 2>>
/* The checkpoint fine */
<<pic "img/general/dylemmas/grandma_checkpoint.jpg" "story">>
<div class="text">At the blockpost, an Oath Boys militiaman is going through an old woman's grocery bag item by item, setting each can on the sandbags like evidence. "Unregistered commerce," he announces, and pockets her folded bills. She doesn't argue - arguing is how you lose the groceries too.</div>
<div id="choice-container">
<<if $money >= 15>>
<<linkreplace "Pay her 'fine' yourself ($15)">>
<<replace "#output">>
<div class="text">"I got it," you say, stepping up with the money already visible - no sudden moves, no eye contact that could be read as a challenge. The militiaman takes it and waves her through, bored. She squeezes your arm at the corner. "You're the one fixing the library," she says. It isn't a question.</div>
<<statchange "money" -15>>
<<statchange "respect" 3>>
<</replace>>
<<dilemmadone "Pay her 'fine' yourself ($15)">>
<</linkreplace>><br>
<</if>>
<<if $physical >= 50 && $heat < 60>>
<<linkreplace "Stare them down">>
<<replace "#output">>
<div class="text">You stop and look at him. That's all. A big man, standing still, watching - with the whole street quietly watching him watch. Militia are brave in packs and behind checkpoints, but something old and mammal in him does the thinking. He shoves the bag back at the woman. "Move along." He'll remember your face. So will the street.</div>
<<statchange "heat" 10>>
<<statchange "respect" 5>>
<</replace>>
<<dilemmadone "Stare them down">>
<</linkreplace>><br>
<<elseif $heat >= 60 && $physical >= 50>>
<div class="req">You won't intimidate anyone.</div><br>
<</if>>
<<linkreplace "Walk past">>
<<replace "#output">>
<div class="text">You walk past with your eyes forward, like everyone else. The cans stay on the sandbags. That night you can still see the way she repacked her bag with shaking hands, careful as a surgeon, so as not to give them a reason.</div>
<</replace>>
<<dilemmadone "Walk past">>
<</linkreplace>>
</div>
<div id="output"></div>
<<case 3>>
/* The eviction */
<<pic "img/general/dylemmas/eviction.webp" "story">>
<div class="text">Three men in matching windbreakers are dragging a family's life into the street - mattress, dresser, a crib. The landlord's muscle. The mother stands on the curb holding a toddler. Looks like a forced eviction.</div>
<div id="choice-container">
<<if $heat < 60>>
<<linkreplace "Muscle them off">>
<<replace "#output">>
<<if $physical >= 55>>
<div class="text">You put yourself between the crib and the doorway and suggest, quietly, that they're done for today. The lead one weighs it - three of them, one of you - and something in how you're standing makes the math come out wrong for him. They leave the furniture on the lawn. The family gets one more night to figure something out.</div>
<<statchange "heat" 12>>
<<statchange "respect" 8>>
<<else>>
<div class="text">You put yourself in the doorway. It goes the way three-on-one usually goes - you take your lumps against the railing - but you stay in the doorway, and there's a limit to what they're paid to do to a man who won't move. They leave the job half-done. The mother helps you up.</div>
<<statchange "heat" 12>>
<<statchange "respect" 8>>
<<statchange "physical" -5>>
<</if>>
<</replace>>
<<dilemmadone "Muscle them off">>
<</linkreplace>><br>
<<else>>
<div class="req">You can't attract more heat.</div><br>
<</if>>
<<if $money >= 10>>
<<linkreplace "Slip the mother $10">>
<<replace "#output">>
<div class="text">You can't stop it. You press the bill into her free hand as you pass. It's a night in somebody's spare room, maybe two.</div>
<<statchange "money" -10>>
<<statchange "respect" 2>>
<</replace>>
<<dilemmadone "Slip the mother $10">>
<</linkreplace>><br>
<</if>>
<<linkreplace "Keep walking">>
<<replace "#output">>
<div class="text">You keep walking, but the mother with toddler on the street still standing before your eyes.</div>
<</replace>>
<<dilemmadone "Keep walking">>
<</linkreplace>>
</div>
<div id="output"></div>
<<case 4>>
/* The informant */
<div class="text">There's a man across from the bar who's been nursing the same cigarette for an hour, and every time somebody goes in or out his lips move slightly, like he's reading license plates. You know the type. The precinct pays by the name.</div>
<div id="choice-container">
<<if $heat < 75>>
<<linkreplace "Confront him">>
<<replace "#output">>
<div class="text">You sit down next to him without being invited and read the street with him for a while, in friendly silence. Then you describe his routine back to him - the cigarette, the lips, and wonder if he's afraid someone would punch his face. He runs away.</div>
<<statchange "heat" 10>>
<<statchange "respect" 3>>
<</replace>>
<<dilemmadone "Confront him">>
<</linkreplace>><br>
<<else>>
<div class="req">You can't attract more heat.</div><br>
<</if>>
<<linkreplace "Warn the bartender quietly">>
<<replace "#output">>
<div class="text">You lean on the bar, and tell Earl about the man with the long-burning cigarette. He doesn't look toward the window - professionals never do. "Appreciated," he says, and by evening half the regulars are entering through the back.</div>
<<statchange "respect" 3>>
<</replace>>
<<dilemmadone "Warn the bartender quietly">>
<</linkreplace>><br>
<<linkreplace "Not your business">>
<<replace "#output">>
<div class="text">Everybody sells something down here.</div>
<</replace>>
<<dilemmadone "Not your business">>
<</linkreplace>>
</div>
<div id="output"></div>
<<case 5>>
/* The tagger */
<div class="text">A surveillance drone drops out of the dark and pins a kid in its spotlight - fourteen, spray can still hissing, a half-finished mural of a raised fist on the wall behind him. The drone's speaker crackles: <i>REMAIN IN PLACE. UNITS DISPATCHED.</i> The kid freezes like a rabbit.</div>
<div id="choice-container">
<<if $heat < 75>>
<<linkreplace "Yank him into a doorway">>
<<replace "#output">>
<div class="text">You cross the light, grab a fistful of hoodie, and haul him into a covered stairwell as the drone reorients. Two turns through the back lots and the whine of its rotors fades. "Finish the fist somewhere with a roof over it," you tell him. He grins like you've knighted him. The drone got footage of you both.</div>
<<statchange "heat" 5>>
<<statchange "respect" 5>>
<</replace>>
<<dilemmadone "Yank him into a doorway">>
<</linkreplace>><br>
<<else>>
<div class="req">Your face is worth more to that camera than his. You can't afford this one.</div><br>
<</if>>
<<linkreplace "Whistle a warning">>
<<replace "#output">>
<div class="text">You put two fingers in your mouth and give the long-short-long the corner kids use for <i>run</i>. The kid unfreezes, ducks under the light, and is gone through a gap in the fence half a second before the spotlight sweeps back. The drone circles twice, petulant, filming an empty wall and a man walking unhurriedly in the other direction.</div>
<<statchange "heat" 2>>
<<statchange "respect" 2>>
<</replace>>
<<dilemmadone "Whistle a warning">>
<</linkreplace>><br>
<<linkreplace "Let the drone do its work">>
<<replace "#output">>
<div class="text">You walk on and don't watch, and the unfinished fist stays on the wall for weeks afterward, fingers open, waiting for somebody with less to lose.</div>
<</replace>>
<<dilemmadone "Let the drone do its work">>
<</linkreplace>>
</div>
<div id="output"></div>
<<case 6>>
/* The jumping */
<div class="text">The stoop across the street empties as you pass. Three of them, spreading out so you can't watch all three at once, and the one in the middle carries a length of rebar loose against his leg, like a cane. No colors, no armbands. Just hungry men who've decided you're carrying something worth the risk. "Pockets," the middle one says. That's the whole speech.</div>
<div id="choice-container">
<<linkreplace "Swing first">>
<<replace "#output">>
<<if $physical >= 55>>
<div class="text">You don't wait for the rebar to come up. You step into the middle one and put your fist through his jaw before the word finishes leaving his mouth. The rebar rings on the concrete. The second gets a boot in the knee and folds sideways, howling; the third looks at his two friends on the ground, does the math, and runs. You step over the rebar man on your way out and leave him his teeth to think about. By morning the whole block knows exactly how that went.</div>
<<statchange "heat" 8>>
<<statchange "respect" 10>>
<<statchange "energy" -2>>
<<else>>
<div class="text">You don't wait, but wanting it isn't winning it. You put one down before the rebar finds your ribs and the sidewalk finds your face. They stomp you carefully, without anger, like men doing a job. But you keep getting up, and there's a point where beating a man who won't stay down stops being profit and starts being work. They take what's in your pockets and leave you the rest.</div>
<<if $money > 0>><<set _jumploss = -Math.min($money, 15)>><<statchange "money" _jumploss>><</if>>
<<statchange "physical" -4>>
<<statchange "energy" -3>>
<</if>>
<</replace>>
<<dilemmadone "Swing first">>
<</linkreplace>><br>
<<if $money >= 5>>
<<linkreplace "Empty your pockets">>
<<replace "#output">>
<div class="text">You hold the bills out like it's nothing personal, and for them it isn't. The middle one counts the money right in front of you, unhurried, letting the street watch. "Smart," he says, the way a teacher grades homework. You walk away whole. The word follows you down the block anyway, and it doesn't mean smart.</div>
<<set _jumploss = -Math.min($money, 15)>><<statchange "money" _jumploss>>
<<statchange "respect" -3>>
<</replace>>
<<dilemmadone "Empty your pockets">>
<</linkreplace>><br>
<</if>>
<<linkreplace "Run for it">>
<<replace "#output">>
<<if random(1, 100) <= 60>>
<div class="text">You break left before the circle closes, vault a fence with the rebar whistling somewhere behind you, and lose them in the gutted rowhouses. Your lungs burn for ten minutes afterward.</div>
<<statchange "energy" -3>>
<<else>>
<div class="text">You make it half a block before the rebar clips your shoulder and takes your legs out from under you. What follows is quick and businesslike. They empty your pockets while you're still working out which way is up, and one of them pats you on the cheek before they stroll off.</div>
<<if $money > 0>><<set _jumploss = -Math.min($money, 15)>><<statchange "money" _jumploss>><</if>>
<<statchange "physical" -4>>
<<statchange "energy" -3>>
<</if>>
<</replace>>
<<dilemmadone "Run for it">>
<</linkreplace>>
</div>
<div id="output"></div>
<<case 7>>
/* The collection */
<div class="text">Two Oath Boys have the old grocer from the corner shop down on the pavement outside his own door, and they're working him over slowly, the way you do when the beating itself is the message. "Arrears," one of them keeps repeating between kicks, like the word does the kicking for him. A dozen people watch from doorways. Nobody moves.</div>
<div id="choice-container">
<<if $heat < 60>>
<<linkreplace "Put them down">>
<<replace "#output">>
<<if $physical >= 55>>
<div class="text">You cross the street already swinging. The first one never sees it; he drops with his jaw pointing the wrong way. The second gets his baton halfway up before your forehead meets his nose, and then he's on the pavement next to his friend, leaking. You stand over them a moment, breathing, letting every doorway get a good look. Then you haul the grocer up. The Oath Boys will come back in numbers - everyone watching knows that. They also watched somebody hit back.</div>
<<statchange "heat" 15>>
<<statchange "respect" 5>>
<<statchange "energy" -2>>
<<else>>
<div class="text">You cross the street already swinging. You drop the first one, but the second is quick with the baton, and it turns into an ugly scrambling thing in the gutter - two men trying to beat each other stupid on wet asphalt. You come out on top, barely, spitting blood, one eye already closing. The grocer's wife drags you both inside before the wrong car turns the corner.</div>
<<statchange "heat" 15>>
<<statchange "respect" 5>>
<<statchange "physical" -5>>
<<statchange "energy" -3>>
<</if>>
<</replace>>
<<dilemmadone "Put them down">>
<</linkreplace>><br>
<<else>>
<div class="req">Too much heat for this.</div><br>
<</if>>
<<linkreplace "Wait it out, then help him">>
<<replace "#output">>
<div class="text">You wait it out with your back against a wall, tasting copper, and when they finally swagger off you're the first one to him. You get him inside, get the glasses off his face before he crushes them, hold a rag to his head while his wife shouts at the ceiling. It isn't nothing. It isn't enough either, and everybody in that little room knows both things.</div>
<<statchange "respect" 1>>
<</replace>>
<<dilemmadone "Wait it out, then help him">>
<</linkreplace>><br>
<<linkreplace "Keep walking">>
<<replace "#output">>
<div class="text">You keep walking. The sound of it follows you half a block - boot, breath, and the grocer not screaming, which is somehow worse.</div>
<</replace>>
<<dilemmadone "Keep walking">>
<</linkreplace>>
</div>
<div id="output"></div>
<</switch>>
<div id="dilemma-exit"><div class="req">The street is watching what you do next. You're not walking away from this until you choose.</div></div>
<</nobr>><<pic "img/general/raid.jpg" "story">>
<div class="text">You hear it before you see it: the percussion of boots and slamming wagon doors. The block is wearing floodlights. It's a sweep.</div>
<div class="text">You spend the next hours face-first against brick while they go through your pockets, your story, and your patience. They take what cash they find as "evidence of undeclared income." No receipt. By the time they let the street breathe again, the night is gone and so is any business you had in it.</div>
<<nobr>>
<<set _seized = Math.trunc($money / 2)>>
<<if _seized > 0>><<set _seizedloss = -_seized>><<statchange "money" _seizedloss>><</if>>
<<set $energy = 0>>
<<set $laying_low = 1>>
<<statchange "heat" -20>>
<</nobr>>
<div class="req">You need to disappear for a while. Get inside, stay inside, sleep it off.</div>
[[Slink back to the hideout|The hideout]]<<nobr>>
<div class="text">An unmarked sedan mounts the curb in front of you, and two plainclothes officers are on you before you can turn around. "There is a man we're looking for, and you fit the description. Wanna change our minds?"</div>
<<set _tax = Math.trunc($money / 4)>>
<<if _tax > 0>><<set _taxloss = -_tax>><<statchange "money" _taxloss>><</if>>
<<statchange "heat" -10>>
<div class="text">Thank god the police are so corrupt.</div>
/* CUT: the patrol wagon frisk - with the drug stash cut there's nothing for them to find, so the event goes nowhere.
<div class="text">A patrol wagon slows to walking pace beside you. "Hands on the wall." The frisk is thorough and unhurried, the kind that's meant to be watched by the whole street.</div>
<<if $drug_stash > 0>>
<div class="text">The officer's hand stops at your jacket pocket. He doesn't arrest you - processing paperwork is effort - he just pockets your stash with a smile and taps you once on the cheek. All of it, gone.</div>
<<set $drug_stash = 0>>
<<statchange "heat" 5>>
<<else>>
<div class="text">They find nothing. The disappointment on the officer's face is almost worth the humiliation. Almost.</div>
<</if>>
*/
<</nobr>>
[[Back to the street|The Hood]]<<nobr>>
<div class="text">Two militiamen step out of a doorway like they've been waiting for you. Maybe they have.</div>
<div id="choice-container">
<<if $money >= 10>>
<<linkreplace "Pay the toll ($10)">>
<<replace "#output">>
<div class="text">You press the bill into his hand without a word. He nods like a man accepting a compliment. As far as they're concerned, you're just another poor man trying to survive.</div>
<<statchange "money" -10>>
<<statchange "heat" -10>>
<</replace>>
<<dilemmadone "Pay the toll ($10)">>
<</linkreplace>><br>
<</if>>
<<linkreplace "Beat the shit out of them">>
<<replace "#output">>
<<if $physical >= 40>>
<div class="text">The one doing the talking is still enjoying his own voice when your fist shuts it off. He sits down in the doorway he came out of. His partner grabs for the radio instead of you, which tells you everything - you slap it out of his hand and put him into the wall until he stops trying to hold onto anything. You leave them where the block can see them. Militia writes down faces, and yours just went to the top of a list, but tonight the doorway toll is closed.</div>
<<statchange "heat" 15>>
<<statchange "respect" 4>>
<<statchange "energy" -2>>
<<else>>
<div class="text">You're not in shape for fighting back. You get one good shot in, and it's worth it right up until it isn't. Two of them, batons out, no crowd to perform for - just work. They take the toll out of your pockets and the rest out of your ribs, and the last thing before they stroll off is a boot in the back, for the paperwork you almost cost them.</div>
<<if $money >= 10>><<statchange "money" -10>><</if>>
<<statchange "heat" 10>>
<<statchange "physical" -4>>
<<statchange "energy" -3>>
<<statchange "respect" -1>>
<</if>>
<</replace>>
<<dilemmadone "Beat the shit out of them">>
<</linkreplace>><br>
<<linkreplace "Run away">>
<<replace "#output">>
<<if random(1, 100) <= 50>>
<div class="text">You're moving before the first one finishes his opening line - through the gap between them, over a fence, down an alley you know better than they do. Boots and swearing behind you, then just swearing, then nothing. Your lungs charge their own toll.</div>
<<statchange "energy" -3>>
<<else>>
<div class="text">You bolt, and make it half a block before a parked car door swings open in front of you. The chase ends on the asphalt. They collect the toll from your pockets while you're catching your breath, plus interest in bruises for making them jog.</div>
<<if $money >= 10>><<statchange "money" -10>><</if>>
<<statchange "physical" -2>>
<<statchange "energy" -3>>
<</if>>
<</replace>>
<<dilemmadone "Run away">>
<</linkreplace>>
</div>
<div id="output"></div>
<div id="dilemma-exit"><div class="req">They're standing in your way. This doesn't end until you pick how.</div></div>
<</nobr>><<nobr>>
<div class="text">You hear it before you see it: an Oath Boys pickup rolling the block at walking speed, spotlight crawling over doorways, a man in the bed reading faces against a clipboard. With the heat you're carrying, yours is on that clipboard.</div>
<div class="text">You fold yourself into a flooded basement stairwell and wait. The light sweeps past once, twice. Somewhere above, boots get out, walk a slow circle, get back in. By the time the engine noise fades toward the avenue, your legs are numb, your shoes are soaked, and a good chunk of your evening belongs to them.</div>
<<statchange "energy" -3>>
<</nobr>>
[[Back to the street|The Hood]]<<nobr>>
<div class="text">A surveillance drone drops to head height in front of you and holds there, lens irising as it works your face against a database. It doesn't announce anything. It just hangs in the air, looking, the way nothing alive is allowed to look at you down here.</div>
<div id="choice-container">
<<linkreplace "Put a stone through its rotor">>
<<replace "#output">>
<<if random(1, 100) <= 50>>
<div class="text">There's half a brick by the curb that might as well have been left there for this. Your first throw catches the rotor guard and the drone staggers sideways like a slapped drunk, clips the fire escape, and comes apart on the asphalt in a very satisfying way. A kid darts out of a doorway and stomps the camera before it stops twitching. The precinct will bill somebody for that. Probably the whole block.</div>
<<statchange "heat" 8>>
<<statchange "respect" 2>>
<<else>>
<div class="text">You throw, and the thing sidesteps in the air like it's bored, gains ten feet, and paints you with a strobe while a flat voice recites a statute number. It follows you for two blocks, filming, before it loses interest. The throw is on record now, attached to your face.</div>
<<statchange "heat" 10>>
<</if>>
<</replace>>
<<dilemmadone "Put a stone through its rotor">>
<</linkreplace>><br>
<<linkreplace "Cut through the back lots">>
<<replace "#output">>
<div class="text">You turn off the street without hurrying and take the long way: under the collapsed carport, through the gap in the fence, along the wall where the gutted rowhouses lean together and make a roof over the path. Drones don't like it back there; too many wires, too much shadow. It costs you twenty minutes and a torn sleeve, but it works.</div>
<<statchange "energy" -2>>
<</replace>>
<<dilemmadone "Cut through the back lots">>
<</linkreplace>><br>
<<linkreplace "Ignore it">>
<<replace "#output">>
<div class="text">You give the lens nothing: no glance, no pace change, just a man walking somewhere unimportant. It holds beside you for half a block, logging your route, then climbs away to bother someone else. Somewhere in a precinct server, a line gets added to your file.</div>
<<statchange "heat" 3>>
<</replace>>
<<dilemmadone "Ignore it">>
<</linkreplace>>
</div>
<div id="output"></div>
<div id="dilemma-exit"><div class="req">The drone is holding position, waiting on what you do.</div></div>
<</nobr>><div class="text">You crack the door and close it again. The street is still crawling - cruisers at both corners, a wagon parked on the curb with its engine running, a drone loitering over the intersection like a patient fly. Every doorway holds a silhouette checking papers.</div>
<div class="text">Whatever business you had out there will have to wait. Today, the neighborhood belongs to them.</div>
[[Go back inside|The hideout]]<div class="text" style="font-size: 1.5em; font-weight: bold;">Democracy is Dead.</div>
<<pic "img/general/intro_1.webp">>
<div class="text">You've been gone for years, serving your country in far-off lands, fighting battles whose purpose blurred even as you fought them. The news from home was easy to ignore back then. Protests. Crackdowns. Whispers of stolen elections. From where you were stationed, the rot felt distant, unreal, someone else's problem.
Coming back wasn't your choice.
Your younger brother, Jeremy, the idealistic kid with more ambition than caution, decided to serve justice as he saw it. He put a bullet in the CEO of the biggest defense contractor in the country, a man whose "less-lethal" toys had killed hundreds during the last election that mattered. The state reacted quickly with charges of domestic terrorism, and preparing for a show trial.</div>
<<pic "img/general/intro_2.jpg">>
<div class="text">As his closest relative, you received a hit as well. Your career ended in a night, a general discharge and a one-way ticket back to a homeland you barely recognized. No pension, no honors - the people who sent you to hell were only happy to finally get rid of you.</div>
<p>You spend some time selling family assets in the country to provide fees for legal support. Now you ride the last leg home on a groaning intercity bus, forehead against cold glass, watching a country that has stopped pretending roll past.</p>
<<pic "img/intro/bus.jpg" "story">>
<div class="text">At the approaches to the city, the bus slows for a checkpoint.
Not a border, and these aren't soldiers. A dozen men in mismatched fatigues and orange armbands lounge around a lowered boom gate, rifles slung, a hand-painted banner reading CITIZENS' MILITIA sagging between two poles. Behind them, a genuine police cruiser sits with its engine idling, and the two cops inside do not so much as look up.
Boots thump down the aisle. The commuters around you develop a sudden, practiced interest in their own shoes. The militiaman who stops at your row is young, sunburned, chewing something. It seems you grabbed his attention - no shit, you're the only black among the passengers.</div>
<<speech "Militiaman" "You! Yes, you. Get up. You look suspicious.">>
<p>You already know how this goes. Overseas, you'd have broken his wrist in the time it took him to blink. Here, the whole bus is watching, the cruiser is idling, and your brother is still alive and needs your help.</p>
<<speech "Militiaman" "We provide security on these roads, and you look like trouble. But just today I might let you go unharmed - for a fee.">>
<<nobr>>
<div class="text">How do you handle it?</div>
<<set _choiceMade = false>>
<div id="choice-container">
<<if not _choiceMade>>
<<linkreplace "Pay them off and keep your head down">>
<<set _choiceMade = true>>
<<replace "#output">>
<p>You peel bills off your dwindling roll and press them into his hand without a word. He counts them, grins, waves you back to your seat. You keep your head down and you keep your teeth. Something tells you this country is going to ask for a lot more of these small surrenders.</p>
<<statchange "money" -30>>
<p>Staying invisible costs money here.</p>
[[The bus rolls on|IntroNew2]]
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Pay them off and keep your head down"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Stare him down and say nothing">>
<<set _choiceMade = true>>
<<replace "#output">>
<p>You don't reach for your wallet. You don't stand. You just look at him, level and unhurried, and let the silence stretch until it becomes a thing everyone on the bus can feel.</p>
<p>He doesn't like what he sees in your face. So he does what small men with rifles do. The stock catches you across the ribs, once, twice, a bright crack of pain, and you're thrown back in your seat. Through pain, you can hear how other Militiamen drag their enraged comrade out of the bus, and it accelerates away from the checkpoint.</p>
<p>But you never reached for your wallet. And every commuter on that bus, every one of them still staring at their shoes, saw a black man take a beating without kneeling. They will remember it longer than the Militia will.</p>
<<statchange "physical" -5>>
<<statchange "respect" 1>>
<p>The ribs will heal. The story will travel.</p>
[[The bus rolls on|IntroNew2]]
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Stare him down and say nothing"</em></div><</replace>>
<</linkreplace>><br>
<</if>>
</div>
<div id="output"></div>
<</nobr>><div class="text">Every lawyer in the city hung up on you. Every one but her.
Luna Star runs her father's old practice out of an old rundown office. Her father, a Cuban immigrant, built this firm and then lost his license to it, disbarred for "extremism," which in this country means he won against the state one time too many. Now it's just Luna, a wall of banker's boxes, and a go-bag packed and waiting under the desk in case police raids occur.
She's younger than you expected, with a sharp face and a sharper mouth, a cigarette burning forgotten between two fingers as she reads. When she finally looks up at you, she skips the sympathy and goes straight to the truth.</div>
<<pic "img/luna/intro.jpg">>
<<speech "Luna" "$real_name, right?" "luna">>
<p>Your real name, from a stranger's mouth. She catches the look on your face and taps the case file - she's done her homework on the whole family. You decide on the spot that she's the only one in this city who gets to keep using it - there are some perks of being a stranger.</p>
<<speech "Luna" "Your brother is not going to make it. The system has already decided." "luna">>
<<speech "You" "Then why take the case?">>
<p>She taps ash onto the floor and almost smiles.</p>
<<speech "Luna" "Somebody has to." "luna">>
<p>Somehow, you knew the answer before you asked the question. She's the kind of person who just does their job and stays true to themselves - no matter what.</p>
<<speech "Luna" "But I'm afraid I can't work for free these days. Check this out." "luna">>
<div class="text">She spreads Jeremy's file across the desk, and that's when you see it. What stops your breath isn't the murder charge - it's a single form, stamped and signed, freezing every asset with your family's name on it. Jeremy's savings. Your savings. The money you wired ahead for his defense, gone the moment it landed, seized as "suspected instruments of terrorism."
The signature at the bottom is confident, practiced, almost elegant. Chief of Police, Douglas Renner.</div>
<<speech "You" "They can just take it? All of it?">>
<<speech "Luna" "Civil forfeiture. They don't charge the money with a crime, they charge you, and the money's just guilty by association. You want it back, there's a hearing. Eleven months out. In front of Judge Halloran, who hunts elk with Renner every fall. So, sure. You'll get your day in court." "luna">>
<p>Good news is, this is still a local story outside of federal jurisdiction. Most likely, the local cops just want assets seized for their own purposes, meaning - you can actually fight it back.</p>
<<speech "Luna" "There's a records office at the precinct. Everything they took from you passed through it. If you want to fight the seizure, that's where the paper lives. Just... be careful whose attention you draw." "luna">>
<<nobr>>
<div class="text">How do you go after the forfeiture?</div>
<<set _choiceMade = false>>
<div id="choice-container">
<<if not _choiceMade>>
<<linkreplace "Bribe a records clerk">>
<<set _choiceMade = true>>
<<replace "#output">>
<p>The clerk is grey and tired and hasn't been paid enough to care about Douglas Renner. A fold of cash changes hands under the counter and you walk out with photocopies you were never supposed to have: Renner's forfeiture ledger, columns of seized lives, and clipped to the back, the Chief's home address and a note on his household. Divorced. One adult daughter still lives with him. You don't know yet what you'll do with it. You just know it's the first thing in this city that has felt like leverage.</p>
<<statchange "money" -20>>
<p>You have the Chief's ledger, and his address. You don't yet know what it's worth.</p>
[[Leave the precinct at dusk|IntroNew3]]
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Bribe a records clerk"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Confront the desk sergeant">>
<<set _choiceMade = true>>
<<replace "#output">>
<p>You put your hands flat on the counter and tell the desk sergeant, calmly and in front of a full waiting room, exactly what kind of theft his Chief's signature represents. But this leads to nowhere, and you're just escorted out. Although... One of the officers seems to be watching you more closely than the others, and slips you a note with the address. "You want to make a scene, do it at Renner's house."</p>
<<statchange "respect" 1>>
<<statchange "heat" 5>>
<p>You made your point, and got noted.</p>
[[Leave the precinct at dusk|IntroNew3]]
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Confront the desk sergeant"</em></div><</replace>>
<</linkreplace>><br>
<</if>>
</div>
<div id="output"></div>
<</nobr>><div class="text">Night alleys lead you to Luna's office with your notes, when they peel out of the shadows: four of them, orange armbands, and this time there's no boom gate, no bus full of witnesses, no performance of legality at all.</div>
<<pic "img/intro/van.webp" "story">>
<div class="text">You put two of them down before the tire iron finds the back of your skull. The world tilts. Zip ties bite your wrists. As they fold you into the back of an unmarked van, you get one clear look at the police cruiser parked forty feet away, lights off, two officers behind the glass watching the whole thing happen. The nearest one meets your eyes.
He looks bored.</div>
<<statchange "physical" -5>>
<div class="text">You wake to the smell of diesel and animal shit.
It's a barn. A real one, somewhere past the edge of town, its stalls converted into cages of welded rebar and chain-link. A generator hums. Somewhere a man is weeping in a language you don't recognize.
In the next cage over, a wiry man sits with his back to the bars, three days of stubble and a lip split and scabbed, and he is, impossibly, chuckling at you.</div>
<<pic "img/intro/jamal_intro.jpg" "story">>
<<speech "Jamal" "Hooo, they got a big one this time. What'd you do, soldier? Forget to smile at the nice men with the armbands?" "jamal_happy">>
<<speech "You" "Something like that.">>
<p>He shifts around to face you, wincing, and studies your face with an attention that cuts through the pain.</p>
<<speech "Jamal" "Wait, Jeremy? How the hell did you end up here?" "jamal">>
<<speech "You" "Jeremy? He's my brother.">>
<p>Something changes in his eyes. He barks a laugh that turns into a cough.</p>
<<speech "Jamal" "I knew him, matter of fact. He wanted to be a hero, and he wanted it his way: no prep, no patience. It's a miracle he pulled it off... if that's what you wanna call it." "jamal">>
<<speech "You" "And you're the expert.">>
<<speech "Jamal" "I'm the man been counting guards for two days while I wait my turn to get shot. Name's Jamal. And I know their rotation cold." "jamal">>
<p>He nods toward the far end of the barn, where a single Militiaman sits half-asleep with a shotgun across his knees and a ring of keys on his belt.</p>
<<speech "Jamal" "One man on the graveyard shift. Fat, tired, alone. In about ten minutes he does his walk. I just been waiting on somebody strong as you..." "jamal">>
<<nobr>>
<div class="text">How do you take the guard?</div>
<<set _choiceMade = false>>
<div id="choice-container">
<<if not _choiceMade>>
<<linkreplace "Break his arm and take the keys">>
<<set _choiceMade = true>>
<<replace "#output">>
<p>When he passes your cage you reach through the bars and take his wrist, and the snap of it echoes off the rafters before he can even scream. You have the keys before he hits the straw. It's loud. It's ugly. Every other prisoner is awake now, and so, somewhere, is whoever the noise carries to. But you and Jamal are through the door and into the treeline in under a minute, and the guard will remember your face for the rest of his short career.</p>
<<statchange "physical" 1>>
<<statchange "heat" 10>>
<div class="req">Fast and brutal. They'll be looking for you.</div>
[[Run|IntroNew4]]
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Break his arm and take the keys"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Same, then burn the barn">>
<<set _choiceMade = true>>
<<replace "#output">>
<p>When he passes your cage you reach through the bars and take his wrist, and the snap of it echoes off the rafters before he can even scream. You have the keys before he hits the straw. It's loud. It's ugly. Before you go, you tip the generator's fuel can across the old dry straw and touch the guard's own lighter to it. You open every cage first. Whatever this place was, it will not be here in the morning. The fire climbs high enough to be seen from the highway, and people will be whispering about it for weeks. Let the regime explain the ashes.</p>
<<statchange "respect" 2>>
<<statchange "heat" 20>>
<div class="req">The whole county saw that fire.</div>
[[Run from the light|IntroNew4]]
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Take the keys, then burn the barn"</em></div><</replace>>
<</linkreplace>><br>
<</if>>
</div>
<div id="output"></div>
<</nobr>><<pic "img/intro/laundromat.webp" "story">>
<div class="text">You come down off the adrenaline in the flat white light of an all-night laundromat, the only place open, the only place with no reason to look twice at two beaten men pretending to wait on a dryer. Jamal buys coffee from a machine that dispenses something adjacent to coffee. You take stock of what you have left, which is nothing, and what the state has taken, which is everything.
Jeremy on a schedule to die. Your money seized with a signature. A cage in a barn that does not officially exist, that you were meant to die in, that no court will ever hear about. And one name signed under all of it.</div>
<<speech "You" "So how do you know my brother?">>
<<speech "Jamal" "He tried to join our, let's say, resistance network. Like I said, boy was running too hot for us." "jamal">>
<<speech "You" "Resistance? Are you serious?">>
<<speech "Jamal" "For lack of a better word. Don't matter much now, ain't many of us left - most just disappeared, and I figure Renner's personal prison was the last place anybody saw them." "jamal">>
<<speech "You" "Renner, huh? That bastard seized the money for Jeremy's defense, and then tried to get rid of me with his goons.">>
<<speech "Jamal" "Way I see it, we got nothing left to lose, and we know exactly the man responsible for that." "jamal">>
<div class="text">He pulls back his jacket just enough to show you the grip of a pistol he took from the barn, and you find that the idea of vigilantism doesn't horrify you the way it should. It feels, if anything, like relief. You have Renner's address and your training. Jamal has a gun and his desperation.</div>
<p>You're just gonna kill this bastard, because you don't have any other options left.</p>
<div class="text">You don't waste time and hijack a car to drive to Renner's residence outside town when it's already early morning. It's a good house, the kind the honest men can't afford, and there in the driveway sits Renner's personal cruiser, meaning the man is home.
<<speech "Jamal" "That daughter of his, name's Eden, she drive a Prius. It ain't here, so she must be out. Perfect." "jamal">> </div>
<<pic "img/intro/mansion.jpg" "story">>
<<nobr>>
<div class="text">How do you go in?</div>
<<set _choiceMade = false>>
<div id="choice-container">
<<if not _choiceMade>>
<<linkreplace "Quiet">>
<<set _choiceMade = true>>
<<replace "#output">>
<p>You take the back door the way you were trained, fast and silent, the lock giving under your hands in seconds. Jamal follows in your wake, and for the first time since you've met he isn't the one leading. Inside the dark house, you move like the professional you used to be.</p>
[[Clear the house|IntroNew5]]
<</replace>>
<<replace "#choice-container">><div class="choice-made">Quiet</div><</replace>>
<</linkreplace>><br>
<<linkreplace "Loud">>
<<set _choiceMade = true>>
<<replace "#output">>
<p>Jamal thinks you're insane, and maybe you are, but there's a poetry to it you can't resist. You put your boot through Douglas Renner's front door the exact way his men put their boots through a hundred others, wood splintering, the whole street free to hear it. It's loud and stupid, and for one second it feels like justice.</p>
<<statchange "respect" 1>>
<<statchange "heat" 5>>
[[Clear the house|IntroNew5]]
<</replace>>
<<replace "#choice-container">><div class="choice-made">Kick the front door like the police do</div><</replace>>
<</linkreplace>><br>
<</if>>
</div>
<div id="output"></div>
<</nobr>><div class="text">You clear the ground floor room by room, gun up, the way you've cleared a hundred rooms in countries whose names the folks back home never learned. Kitchen, empty. Study, empty, a wall of framed commendations glinting in the dark. Living room, empty.
In the window's reflection, out on the driveway below, you finally see what you missed: the yellow tow-tag hanging from Renner's cruiser mirror, the shop sticker in the windshield. Transmission's dead. He must have used his daughter's car as a spare.
Your intelligence was a guess and your guess was wrong. The house is empty of the only man you came for.
It is not empty of everyone.</div>
<<video "img/intro/eden_intro_0.mp4">>
<div class="text">In the hallway appears a feminine silhouette, and you take her down from behind and lead her to the kitchen, where you together tie the girl to a chair.</div>
<<speech "Jamal" "Man, it was NOT supposed to go down like this!" "jamal">>
<<speech "You" "It never is! We fucked up, the man is not here. I'll watch over his daughter, you go scout his cabinet, look for any papers that might have dirt on him.">>
<div class="text">Jamal leaves you alone with a teenage girl, struggling in her kitchen chair. Despite the situation, you can't help but gaze at the pretty young woman in what is essentially the underwear she was sleeping in. It doesn't help that her wide eyes on the pretty, freckled face beg you to un-tape her mouth.</div>
<<speech "You" "Okay, I'm going to take the gag off, but you have to promise you'll be good?">>
<<video "img/intro/eden_intro_1.mp4">>
<p>She enthusiastically nods, and you remove the tape. She takes a deep breath and looks at you - without even a hint of fear.</p>
<<speech "Eden" "This is so fucking exciting!" "eden">>
<<pic "img/intro/intro_what.webp">>
<<speech "You" "What? You don't look scared at all.">>
<p>She giggles.</p>
<<speech "Eden" "Noo, you have no idea - this is one of my favorite fantasies! Feel how soaked I am in my pussy... Feel it, please!" "eden">>
<<video "img/intro/eden_intro_2.mp4">>
<p>Unable to resist, you reach down and feel the wetness and burning warmth of her pussy through the thin cotton of her panties. The way her thighs start moving back and forth riding the chair makes your cock twitch in your pants. You slap her slutty pussy, and she only giggles in response.</p>
<<speech "Eden" "You wanted to hurt my daddy, right? I don't think there is a better way to do it. Show me your big black cock~" "eden">>
<p>You swiftly untie the girl and command her to crawl to the wall. Slowly, you walk up to her, pulling out your hardening cock, stopping inches before her face - and Eden, daughter of the police chief, openly opens her mouth for you to use.</p>
<<video "img/intro/eden_intro_3.mp4">>
<<nobr>>
<div class="text">How do you use her mouth?</div>
<<set _choiceMade = false>>
<div id="choice-container">
<<if not _choiceMade>>
<<linkreplace "Let her set her own hungry pace">>
<<set _choiceMade = true>>
<<replace "#output">>
<p>You let her run the show, and she makes a filthy little meal of it, worshipping every inch with her tongue, working you slow and wet while you press her against the wall with your massive big black cock.</p>
[[Jamal comes back|IntroNew5b]]
<</replace>>
<<replace "#choice-container">><div class="choice-made">You let her work</div><</replace>>
<</linkreplace>><br>
<<linkreplace "Grab her hair and take her throat">>
<<set _choiceMade = true>>
<<replace "#output">>
<p>You grab that black hair and take over, and you brace for her to gag and flinch the way a spoiled girl should. She doesn't. She melts into it, throat opening for you like she's had a lot of practice she never told daddy about. Balls-deep, eyes streaming and delighted, thoroughly enjoying the facefuck.</p>
<<video "img/intro/eden_intro_4.mp4">>
[[Jamal comes back|IntroNew5b]]
<</replace>>
<<replace "#choice-container">><div class="choice-made">You take her throat</div><</replace>>
<</linkreplace>><br>
<</if>>
</div>
<div id="output"></div>
<</nobr>><div class="text">Footsteps in the hall. Jamal rounds the corner out of the study with a box of the chief's papers, mid-sentence about something he found, and stops dead. His eyes travel from you, to the half-naked girl slick-mouthed and kneeling at your cock.</div>
<<speech "Jamal" "What the fuck?! Nigga, have you lost your goddamn mind?!" "jamal">>
<<video "img/intro/eden_intro_5.mp4">>
<p>You take a step back, feeling a bit awkward facing Jamal with your dick out - but his eyes are focused on drooling and happy Eden, who playfully waves her little hand at him.</p>
<<speech "You" "Man, I swear, she's a freaky girl. She asked for it.">>
<<speech "Eden" "I'm just tired being under dad's watch." "eden">>
<p>Jamal looks down at the papers in his hand, then at the chief's daughter offering herself up like the best evidence in the world. He lets them drop to the floor.</p>
<<speech "Jamal" "Shit. Fuck it, I want me some of that too." "jamal_happy">>
<div class="text">You haul her up off the tile and bring her down the hall into her bedroom, where you throw police chief's daughter on her bed like a ragdoll.</div>
<<speech "Eden" "Hihi! Wait, wait, let me get my phone... I want my father to see this." "eden">>
<<speech "Jamal" "Yo what?" "jamal">>
<<speech "Eden" "Old bastard thinks I'm his property. I'm so tired of his bullshit! I just want to take back control of my life, and I think letting you guys fuck my brains out is exactly what is needed!" "eden">>
<p>You don't argue with that and take her from behind, sinking into a cunt that's soaked and ready, while Jamal feeds himself into that clever mouth from the other end. She's pinned between you, spitroasted on her own mattress, and she grins around Jamal's cock the whole time.</p>
<<video "img/intro/eden_intro_6.mp4">>
<p>She takes both of you like it's what she was built for, rocking herself back onto you and forward onto him, gagging happily every time Jamal loses his patience, her moans thick and muffled under him. Every so often she pulls off him just to check the phone is still angled right.</p>
<<speech "Eden" "That's it, both of you, ruin me. He's going to watch this a hundred times and die a little more each one." "eden">>
<<speech "You" "Shit, you ARE a freak. Yo, man, I think it's your turn on this pussy.">>
<<speech "Jamal" "Yeah, brother, I'm coming - soon as this bitch quit gobbling up my dick!" "jamal">>
<div class="text">Eden climbs up over Jamal and sinks down onto his cock, riding him slow and deep. She looks back at you over her shoulder, reaches both hands behind herself, and spreads her plump ass wide, an open invitation you'd have to be a saint to ignore.</div>
<<video "img/intro/eden_intro_7.mp4">>
<<speech "Eden" "Don't be polite. There's another hole, and I want daddy to watch every single one of them get used." "eden">>
<<nobr>>
<div class="text">Do you take what she's offering?</div>
<<set _choiceMade = false>>
<div id="choice-container">
<<if not _choiceMade>>
<<linkreplace "Take the invitation">>
<<set _choiceMade = true>>
<<replace "#output">>
<p>You spit down between her spread cheeks and press into her ass while Jamal stays buried in her cunt, and the sound she makes barely qualifies as human. The two of you fill her at once, working out a rhythm that has her stuffed and babbling, both of you inside the chief's little girl while her own camera drinks in every second of it.</p>
<<video "img/intro/eden_intro_dp.mp4">>
<<speech "Eden" "OH GAWD, keep going!" "eden">>
<p>It's awkward to feel Jamal's dick right behind the thin wall of Eden's insides, thrusting and twitching, but only at first. Even your escape from the militia's prison wasn't as bonding as DP-ing together.</p>
[[Finish it|IntroNew5c]]
<</replace>>
<<replace "#choice-container">><div class="choice-made">You take her ass</div><</replace>>
<</linkreplace>><br>
<<linkreplace "Not that far, not yet">>
<<set _choiceMade = true>>
<<replace "#output">>
<p>You leave that invitation on the table, not sure whether you are ready to be so close to Jamal's dick. Instead, when he has had his fill of her riding him, you pull her up by the jaw and give her something else to choke on, and she rewards you by burying her nose in your stomach and swallowing you to the root, that surprisingly greedy throat working you over while Jamal watches and laughs.</p>
<<video "img/intro/eden_intro_8.mp4">>
<<speech "Eden" "See how deep I take it? Bet daddy never wanted to know his girl could do that." "eden">>
[[Finish it|IntroNew5c]]
<</replace>>
<<replace "#choice-container">><div class="choice-made">You keep it to her throat</div><</replace>>
<</linkreplace>><br>
<</if>>
</div>
<div id="output"></div>
<</nobr>><div class="text">You're both close now, and Eden knows it. She slides off the bed and drops back to her knees on the carpet, tilts that freckled face up, and holds the phone out at arm's length so the lens catches all three of you in the frame.</div>
<<speech "Eden" "On my face. One at a time. I want him to be able to count you." "eden">>
<div class="text">You go first. You finish across her cheek and her open mouth, and she keeps her eyes on the camera the whole time, tongue out, catching what she can.</div>
<<video "img/intro/eden_intro_facial1.mp4">>
<p>Then Jamal steps in and empties himself over the other side of her face, until she's dripping and grinning through the mess, looking more like a girl who just won something than one who was tied to a chair an hour ago.</p>
<<video "img/intro/eden_intro_facial2.mp4">>
<p>Eden turns the phone around, angles it down at the mess the two of you left on her, and snaps a photo with a satisfied little hum.</p>
<<pic "img/intro/intro_selfie.jpeg">>
<<speech "You" "What are you doing?">>
<<speech "Eden" "The best part." "eden">>
<p>Her thumbs move fast. You realize what's happening half a second too late to stop it, and you wouldn't have stopped it anyway. She sends the video straight to her father's personal number. And then, giggling, before either of you can say a word, she forwards the whole thing to something labeled LODGE, a group chat of two hundred of the chief's proudest, most patriotic brothers.</p>
<<speech "Eden" "Oops. Fat fingers. Guess everyone's about to see what the chief's little girl really likes." "eden">>
<<speech "You" "Shit, we should have kept the masks... Man, we gotta run.">>
<<statchange "heat" 30>>
<p>But Jamal barely listens - he is staring at the phone, then at you, and you can watch the idea arriving on his face - a big one.</p>
[[Get out before the neighborhood wakes|IntroNew6]]<div class="text">It takes three days.
You spend them in a cheap motel with the shades down, watching it happen from a distance, and it happens faster and more completely than anything Jamal's resistance network ever managed with a bomb. Eden's little group-chat "accident" did what no court and no bullet ever could. By the second morning the video is everywhere the Chief's world lives, the Militia channels, the precinct, the "lodge", passed man to man with the special glee that men like that reserve for one of their own brought low.
In a regime built on the fantasy of racial and patriarchal dominance, Douglas Renner is finished. Not arrested. Not martyred. Worse. He is the man whose own daughter begged two black men to ruin her in his own home, on camera, laughing. He cannot give an order anyone will follow. He resigns "for health reasons" before the week is out, and the forfeiture cases that carried his signature, dozens of them, quietly collapse into a legal embarrassment nobody wants to defend.</div>
<div class="text">Your phone buzzes. A number you don't recognize, a message that is only a scan of a court form: the freeze on your family's assets, VACATED, Renner's name struck through. And beneath it, a photo of a handwritten note from Luna Star.</div>
<<speech "Luna" "You won today, $real_name. P.S. You owe me a coffee." "luna">>
<div class="text">Jamal finds you that night, and he isn't laughing.</div>
<<speech "Jamal" "You know who I was, before that barn? I was a true believer. Real deal, bombs, sabotage, you name it." "jamal">>
<<speech "Jamal" "Three years I gave it. You know what all our fire and blood ever bought? Recruitment posters. Every bomb we set, they put on the news to prove we was the animals they always said. We made them stronger every single time we fought them the way they wanted to be fought." "jamal">>
<p>He sits heavily on the edge of the bed, turning his dead phone over in his hands, and looks at you like a man who has just watched the ground shift under his whole life.</p>
<<speech "Jamal" "And then you and me, half-dead out of a cage, no plan, wrong recon. And we ended a police chief in one night. With a phone camera. No bomb. No bullet. We took the one thing these fascist motherfuckers can't live without, the one thing their whole sick world is built to protect." "jamal">>
<<speech "You" "Their women?">>
<<speech "Jamal" "Nah, brother. Their pride." "jamal">>
<div class="text">It should sound insane, but you've seen it work. You watched a signature that stole your family's future get erased by a phone video and a girl's spite, and some cold, strategic part of you is already doing the math Jamal is doing.</div>
<<speech "You" "So what happens now?">>
<<speech "Jamal" "Now we go dark. Our faces on that tape, so we watching our heat from here on out." "jamal">>
<p>Jamal slides a folded note across the cheap motel bedspread, a key on top of it.</p>
<<speech "Jamal" "Here, key to a safe house, address on the note. Shitty neighborhood, but ain't nobody gon' look at you twice there. You lay low, get to know the block, make people respect you - 'cause we gon' need people." "jamal">>
<<speech "Jamal" "Meanwhile I'm gon' reach out to my network, what's left of it. I'll scout a new target and come find you." "jamal">>
<<speech "You" "How does this help me? What about Jeremy?">>
<<speech "Jamal" "We do this right, we get close enough to reach the people who can open his cell, or sign the paper that does. That's the long game. Tonight was just proof it works." "jamal">>
<p>He stands and heads for the door.</p>
<<speech "Jamal" "That was good sex, tho." "jamal">>
<div class="req">You have an address, a key, and a war nobody trained you for. Whatever the last three days were, they were the old life finishing. Everything from here counts from day one.</div>
[[Go to the address|The Wall]]<<pic "img/intro/wall.webp" "story">>
<div class="text">The city bus approaches the wall: concrete highway barriers stacked two high and topped with wire, camera masts every hundred meters, the concrete gone grey-brown with exhaust and rain. </div>
<div class="text">There are several roads in, each guarded by a blockpost like the one your bus is approaching: sandbags, a lowered boom, floodlights on poles, a plywood booth with a militia flag. Two queues. The long one is residents coming out for the early shifts, work passes held at chest height. The short queue is going in.
The short queue is you.</div>
<div class="text">The militiaman at the gate looks at you, at your bag, at your face, and waves you through without asking for anything at all. What goes in doesn't matter. Nobody smuggles themselves INTO the reservation.
</div>
<<pic "img/general/hood_2.jpg" "story">>
<div class="text">Inside, the first thing you understand is that "the hood" is the polite name. The city pushed everything it didn't want behind this wall - the immigrants first, then the poor and unreliable.
Police and militia don't patrol this side of the wall; they come in force or not at all, and between their raids this place is either a hellhole or a libertarian paradise - depends on your perspective. It even attracts outside visitors - you spot several expensive cars that roll through the main alley, looking for cheap thrills: drugs on the corner, cheap whores from the local brothel, or a nightclub where you can do both.</div>
<div class="text">The address on the note is a corner store with dead windows, three blocks past a bar that's somehow still lit. Around the side, up an exterior stair, a door with a bolt lock that Jamal's key fits. You stand on the landing a moment, looking back the way you came: over the low roofs you can still make out the camera masts along the wall, red lights blinking in the dark, every one of them pointed in at you and your new neighbors.</div>
[[Go inside|The hideout]]<<switch $community_quest>>
<<case 1>>
<<pic "img/general/community_stage1.webp" "story">>
<div class="text">The burned-out shell of the community library sits behind a sagging length of caution tape nobody has bothered to replace. Whatever happens to this building next, it starts with someone walking inside.</div>
<<linkreplace "Explore the building">>
<div class="text">The community library is a gutted shell now, scorch marks up the facade, most of the windows gone. Inside, the air smells of ash and damp decay, with the sour tang of old smoke underneath it. A charred pile of books sits in the center of the main hall, pages curled and black. The walls are smeared with hateful graffiti, crude symbols and slurs in spray paint. The shelves sag, their contents looted or ruined by fire and time. The structure held, but the place is hollow.<br><br>
You walk it twice before you start counting properly. The fires were put out fast enough that most of the damage is cosmetic, and the brick held. The roof and the wooden floors are the exceptions. Cleanup first, then the roof, and only after that the windows and the interior.<br><br>
It will take time, effort and, more to the point, money. You can do it alone. It would go a great deal faster with someone who knows construction.</div>
<<statchange "energy" -3>>
<<set $community_quest to 3>>
<</linkreplace>>
<<case 3>>
<<album "img/general/community_progress_" 2 "webp" "story">>
<<renophase>>
/* Standing description of the site as it currently is. The per-session
flavour further down only renders inside "Get to work", so without this
a player who is short on money or energy gets a percentage and a link
and nothing that reads like a building. */
<div class="text"><<switch _phase>>
<<case "Cleanup">>
Every visit starts the same way: shoulder the door until the warped frame lets go, then stand a moment while your eyes adjust. The hall smells of wet ash and will for a long time yet. What you have hauled out so far sits in the parking lot in sorted heaps, most of it shelving. What you have not hauled out is everything else. Light comes down through the holes in the roof in solid grey columns, full of the dust you keep raising, and the graffiti is still legible from the door. You have stopped reading it. That took about a week.
<<case "Roof">>
The floor is clear enough to walk without watching your feet now, and that changes the place more than the work deserves. You can see the shape of it: where the shelves ran, where the desk sat. There is a darker rectangle high on the back wall where something official used to hang, and nobody has been able to tell you what. Rain still finds the same four spots and has started leaving stains down the plaster. Up on the joists the burned span is obvious, black wood giving way to grey, and the wind moves through it loud enough to hear from the ground.
<<case "Windows">>
Dry, at last. The new decking smells of cut pine over the ash, a clean smell fighting a dirty one, and for the first time the building holds a temperature. What it does not hold is wind. The boards you nailed over the worst of the frames make the hall dark as well as cold, and sparrows come and go through the rest like they have been paying rent. When you sweep, the dust stays down instead of hanging in the light. Small thing. You notice it every time.
<<default>>
It is a room again. Glass in the frames, and the hall fills up with ordinary afternoon light that shows you exactly how much is left: bare plaster, raw sanded floor, wiring stapled along the baseboards waiting on cover. The echo is what gets you. Your footsteps come back off the far wall now, and the place has the sound of somewhere people are meant to sit quietly. Ella's clipboard lives on the sill. She has started leaving her coat here between visits.
<</switch>></div>
/* Wrapped in an id so "Get to work" can refresh it in place - otherwise the
header keeps showing the pre-action percentage until the player leaves. */
<div id="reno-header" class="text" style="font-size: 1.2em; font-weight: bold;"><<if $library_progress < 100>>Phase: _phase. Renovation progress: $library_progress%.<<else>>Renovation progress: $library_progress%.<</if>></div>
<<nobr>>
<<if $library_progress >= 90 && $library_standoff < 2>>
<<set $library_standoff = 1>>
<div class="text">The work stops on its own. A big diesel pickup has made two slow passes along the block, and now it's swinging back around, bed full of men in mismatched camo. The Oath Boys have finally come to look at what's growing where their fire used to be.</div>
[[Face them|LibraryStandoff]]
<<elseif $library_progress >= 50 && $library_progress < 70 && $library_materials == 0>>
<<if $money >= 15>>
<<linkreplace "Buy window glass and frames ($15)">>
<div class="text">Glass doesn't get salvaged - glass gets bought. You spend a morning with a glazier on the other side of the hood who asks no questions about the address, and by afternoon a hand cart of panes and secondhand frames stands wrapped in blankets inside the main hall. Now the window work can start.</div>
<<statchange "money" -15>>
<<set $library_materials = 1>>
<</linkreplace>>
<<else>>
<div class="req">The empty window sockets are next, and boards won't do this time. You need $15 for glass and frames before this phase can start.</div>
<</if>>
<<elseif $money >= 5 && $energy >=5 && $library_progress < 100 >>
<<linkreplace "Get to work">>
<<nobr>>
<<if _phase == "Cleanup" && $library_find < 1>>
<<set $library_find = 1>>
<div class="text">Prying the burned notice board off the front door, you find a paper stapled beneath it, scorched at the edges but legible: NOTICE OF UNREGISTERED ASSEMBLY, citing "recurring unsanctioned gatherings" - the literacy classes, the tenant meetings - with the Oath Boys' torch stamp at the bottom. They wrote themselves permission before they lit the match. And up close, the graffiti tells you who held the pen: crooked swastikas with the arms bent the wrong way, SS bolts, an "88" and a "14" in the same hand. Dollar-store Third Reich, copied off the internet by men who couldn't spell "Reich."</div>
<<elseif _phase == "Roof" && $library_find < 2>>
<<set $library_find = 2>>
<div class="text">Up on the roof you find where the fire started: a scorch flower spread around a melted bottle neck, the burned rag still fused to it. Snagged on the parapet wire beside it, an iron-cross patch - machine-embroidered, the kind sold at the surplus store two blocks from the blockpost. They didn't even climb down the way they came up. They just dropped the bottle and ran like kids.</div>
<<elseif _phase == "Windows" && $library_find < 3>>
<<set $library_find = 3>>
<div class="text">Sweeping out the last window frame, you free a half-burned sheet that has been wedged there since the fire: a hand-drawn flyer. LEARN TO READ WITH YOUR KIDS, TUESDAYS. TENANT MEETING, THURSDAYS - KNOW YOUR RIGHTS. This is what the citation called "unregistered assembly." Not the books. The Tuesdays and the Thursdays. You show it to Ella, and for the rest of the afternoon she works without saying a word.</div>
<<elseif _phase == "Interior" && $library_find < 4>>
<<set $library_find = 4>>
<div class="text">Behind the collapsed front desk, in a fireproof cash box that did its job, you find the sign-in ledger from the mutual-aid nights. Ella goes through it page by page with ash-black fingers, and you watch her sort the names the way she sorted the books: still here, relocated, detained, unknown. She copies the whole thing out by hand into a new notebook before she lets you shelve the original. "The building isn't the thing we're rebuilding," she says. "This is."</div>
<<else>>
<div class="text"><<switch _phase>>
<<case "Cleanup">>
<<set _event=random(1,4)>>
<<switch _event>>
<<case 1>>
As you toss the debris into a growing pile outside, you haul out the charred remains of books and furniture. The smell of burned paper and wood clings to your clothes long after.
<<case 2>>
Despite you scrubbing at the hateful graffiti on the walls, the paint barely fades, leaving faint scars of words you'd rather forget.
<<case 3>>
With a borrowed broom, you sweep layers of ash and dirt from the floors. Warped tile shows up underneath, and here and there a scrap of what the place used to be - a date stamp card, half a poster about summer reading.
<<case 4>>
You spend the session hauling out the ruined carpet in strips, rolled like bodies, while a couple of neighborhood kids watch from the doorway and keep a wary count of your trips.
<</switch>>
<<case "Roof">>
<<set _event=random(1,3)>>
<<switch _event>>
<<case 1>>
You patch gaps in the roof with tar and plywood, each hammer strike echoing through the empty shell of the library.
<<case 2>>
You spend the day tearing out charred joists and sistering new lumber alongside the ones that held. From up here you can see the blockpost at the end of the main road, and it can see you.
<<case 3>>
Hot tar work under a flat gray sky. By the end of it your shoulders scream and the roofline runs straight for the first time since the fire.
<</switch>>
<<case "Windows">>
<<set _event=random(1,3)>>
<<switch _event>>
<<case 1>>
A rusted hammer in hand, you pry loose warped and blackened boards from the windows, letting in pale sunlight for the first time in months.
<<case 2>>
Glazing is patient work: bed the pane, set the points, run the putty with a thumb. By dusk one more window holds the warm light in instead of the weather out.
<<case 3>>
You hang salvaged frames plumb in sockets that aren't, shimming until the bubble sits center. A passing old man stops to watch the glass go in and doesn't say anything, but he takes his hat off.
<</switch>>
<<case "Interior">>
<<set _event=random(1,3)>>
<<switch _event>>
<<case 1>>
You drag in salvaged shelves from a nearby thrift store; each piece mismatched but sturdy enough to hold what little you can restore. Ella directs the placement like artillery: two degrees left, hold, there.
<<case 2>>
Paint day. Ella tapes the trim and rations the rollers, and you cover the last of the scorch shadows with a color she calls "institutional cream" and defends like a thesis.
<<case 3>>
You and Ella spend the session shelving the "lives" stack in proper order. She keeps stopping to read first pages out loud, which is the least efficient sorting method ever devised, and neither of you does anything to fix it.
<</switch>>
<</switch>></div>
<</if>>
<</nobr>>
<<statchange "money" -5>>
<<statchange "energy" -5>>
<<set $library_progress +=10>>
<<if $foreman_help > 0 >>
<p>Thanks to the help from the foreman, you're able to progress faster.</p>
<<set $library_progress +=10>>
<<elseif _phase == "Roof" && $construction_rep >= 12>>
<p>You've hung enough joists on the foreman's site to do this kind of work in your sleep. The roof goes twice as fast under hands that know it.</p>
<<set $library_progress +=10>>
<</if>>
<<set $library_progress = Math.min(100, $library_progress)>>
/* Recompute the phase and repaint the header so the new percentage shows
immediately instead of on the next visit. */
/* Percentage only: the phase name here would be the *next* phase, sitting
directly under a paragraph describing the work you just did in the
previous one, which reads as a contradiction. */
<<replace "#reno-header">>Renovation progress: $library_progress%.<</replace>>
<</linkreplace>>
<<elseif $library_progress < 100>>
<p> You need at least 5 energy and 5 money to work on the renovation.</p>
<</if>>
<<if $ella_stage == 1>>
<div class="req">You wonder if you should tell Ella about the progress you've made... She still drowns her evenings at the bar.</div>
<<elseif $ella_stage == 2>>
<<if $library_progress < 30>>
<div class="req">Ella comes by the site but keeps her distance while the place is still a burned shell - finish the cleanup first, then she'll have something to plan over.</div>
<<elseif $day >= $ella_next_day>>
<p>Ella's been at the site since morning - sober, organized, and apparently expecting you.</p>
[[Share a coffee with her|EllaBeat_Plans]]
<<else>>
<div class="req">Give it a day - after the state you last saw her in, Ella will need one.</div>
<</if>>
<<elseif $ella_stage == 3>>
<<if $library_progress < 50>>
<div class="req">Ella circles the charred book pile with her clipboard, but salvage day needs a dry building - get the roof done first.</div>
<<elseif $day >= $ella_next_day>>
<p>Ella has cordoned off the charred book pile and is eyeing it like an enemy position. She waves you over.</p>
[[Join her for salvage day|EllaBeat_Salvage]]
<<else>>
<div class="req">Ella is buried in her clipboard today. Come back another day - the salvage pile isn't going anywhere.</div>
<</if>>
<<elseif $ella_stage == 4>>
<<if $library_progress >= 100 && $library_standoff == 2>>
<<if $day >= $ella_next_day>>
[[Complete the renovation|Ella Hughes]]
<<else>>
<div class="req">The last coat of paint is drying. Come back tomorrow - Ella wants everything perfect for the unveiling.</div>
<</if>>
<<elseif $library_progress < 100>>
<div class="req">Ella is ready for the finish - now the building has to be. Complete the renovation.</div>
<</if>>
<</if>>
<</nobr>>
<<case 4>>
<<pic "img/general/community_stage4.jpg" "location">>
<<if $ella_stage == 5>>
<<if $day >= $ella_next_day>>
<p>Opening day. The doors stand wide for the first time since the fire, and the block has turned out in numbers - kids on the rug, mothers by the kettle, the chess players already arguing over a board someone donated. Ella is everywhere at once, and somehow never far from you.</p>
<<else>>
<p>The renovation is done, but the doors stay locked - Ella wants the neighborhood's first look to be tomorrow, at the grand opening, and not a minute earlier. Through the new glass you can see her moving between the shelves, straightening books that were already straight an hour ago.</p>
<</if>>
[[Find Ella|Ella Hughes]]<br>
<<else>>
<p>The library feels alive again. The modest shelves hold their salvaged books, quiet conversations and the occasional laugh carry between the walls, and the whole place smells of paper and fresh wood. In this neighborhood, that smell alone is worth defending.</p>
<<if $library_standoff == 2>><p>The Oath Boys give the building a wide berth these days - nobody wants a second helping of that afternoon on the curb. Their trucks still own the rest of the block. Just not this address.</p><</if>>
<<libraryevent>>
<<nobr>>
[[Find Ella|Ella Hughes]]<br>
<<if $energy >=5>>[[Do volunteer work|Volunteer]]<br><<else>>Not enough energy to do volunteer work.<br><</if>>
<<if $energy >=3>><<if $reading_hour_day < $day>>[[Host the reading hour|LibraryReadingHour]]<br><<else>><div class="req">Today's reading hour is done - the rug crowd has a strict one-per-day policy.</div><</if>><<else>>Not enough energy to host the reading hour.<br><</if>>
<<if $target1>=4>><<if $energy >=5>>[[Find something to read|Study]]<br><<else>>Not enough energy to study.<br><</if>><</if>>
<<if $backroom_unlocked > 0>>
<<if $energy >=5>>[[Read in the back room|LibraryBackRoom]]<br><<else>>Not enough energy for the back room.<br><</if>>
<<elseif $ella_stage >= 6>>
<<if $money >= 30 && $energy >= 5>>
<<linkreplace "Build a back room behind the poetry shelf ($30)">>
<div class="text">You pitch it to Ella as a supply closet, and she looks at you the way she looks at books that lie about their genre. Then she draws the hinge mechanism herself. A weekend of quiet carpentry later, the poetry shelf swings on a pivot, and behind it waits a lamp, a chair, and empty shelving for the books that can't sit in the open. "If they ever find it," she says, handing you the first banned title for the collection, "we were never in here."</div>
<<statchange "money" -30>>
<<statchange "energy" -5>>
<<set $backroom_unlocked = 1>>
<</linkreplace>><br>
<<else>>
<div class="req">Ella keeps eyeing the dead space behind the poetry shelf. A hidden reading room would take $30 in lumber and hardware, and a free evening (5 energy).</div>
<</if>>
<</if>>
<</nobr>>
<</if>>
<</switch>>
<<nobr>>
<<if $school_unlocked == 3 && $school_intro_location == "library">>[[Meet with Jamal|SchoolIntroLibrary]]<br><</if>>
<<if $william_stage == 2 && $ella_stage >= 11 && $energy >= 1>>[[Tell Ella about William's invitation|William Arrangement]]<br><</if>>
<<if $ella_mmf_stage == 1>><<linkreplace "Ella wants to talk...">><<nobr>>
<<speech "Ella" "So...">><br>
<<speech "You" "Yes?">><br>
<<speech "Ella" "I wanted to ask you something...">><br>
<<speech "You" "Go on, babe.">><br>
<<speech "Ella" "This is so awkward...">><br>
<<speech "You" "You want to know if I'm OK with Jamal and me taking turns fucking your ginger pussy with our big black cocks until we cum all over your pretty little face?">><br>
<p>Ella blushes, not only because of your straightforwardness but also from arousal - you can tell she has already depicted the threesome - in a similar fashion.</p><br>
<<speech "Ella" "Well... yeah?">><br>
<div id="choice-container">
<<if not _choiceMade>>
<<linkreplace "Not OK">>
<<set _choiceMade = true>>
<<set $ella_mmf_stage = -1>>
<<replace "#output">><<speech "Ella" "Oh... Well... Can you please forget this ever happened?">><br><</replace>>
<<replace "#choice-container">><</replace>>
<</linkreplace>><br>
<<linkreplace "Let's do it!">>
<<set _choiceMade = true>>
<<set $ella_mmf_stage = 2>>
<<replace "#output">><p>Ella smirks.</p>
<<speech "Ella" "That means so much to me! I think I have a place in mind. Contact Jamal, and meet me there tomorrow!">><<set $nextday = 1>><br><br><</replace>>
<<replace "#choice-container">><</replace>> <!-- Hides both choices -->
<</linkreplace>><br>
<</if>>
</div>
<div id="output"></div>
<br>
<</nobr>><</linkreplace>><br><</if>><br>
[[Go outside|The Hood]]
<</nobr>>/* ============================================================
Library system widgets.
<<renophase>> - maps $library_progress to the current rebuild
phase name (_phase): Cleanup 0-29, Roof 30-49, Windows 50-69,
Interior 70-99.
<<libraryevent>> - rolled on visiting the finished library
(community_quest == 4). 40% chance, at most one per day
($last_library_event_day). Gated events fall back to a quiet
line, Hood-style.
============================================================ */
<<widget "renophase">>
<<if $library_progress < 30>>
<<set _phase = "Cleanup">>
<<elseif $library_progress < 50>>
<<set _phase = "Roof">>
<<elseif $library_progress < 70>>
<<set _phase = "Windows">>
<<else>>
<<set _phase = "Interior">>
<</if>>
<</widget>>
<<widget "libraryevent">>
<<if $last_library_event_day < $day && random(1, 100) <= 40>>
<<set $last_library_event_day = $day>>
<<set _levent = random(1, 8)>>
/* Gated events fall back to the quiet default (case 0) */
<<if _levent == 5 && ($ella_stage < 6 || $energy < 3)>><<set _levent = 0>><</if>>
<<if _levent == 3 && $energy < 2>><<set _levent = 0>><</if>>
<<switch _levent>>
<<case 1>>
/* Banned book request */
<div class="text">A man you half-recognize from the hood waits until the reading tables empty out before he approaches the desk. He doesn't ask for a title. He slides over a scrap of paper with one written on it, folded twice, and keeps his hand flat on the desk like the scrap might try to escape. The book is on the proscribed list. Of course it is - the good ones usually are.</div>
<div id="choice-container">
<<linkreplace "Wrap it in newspaper">>
<<replace "#output">>
<div class="text">You find the book, fold the state paper around it - sports section out, nobody checks the sports section - and hand it across like a sandwich. He's gone in under a minute. It'll come back the same way, or it won't come back at all. Either way, the word moves: the library lends what the list forbids.</div>
<<statchange "respect" 3>>
<<statchange "heat" 5>>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Wrap it in newspaper"</em></div><</replace>>
<</linkreplace>><br>
<<if $backroom_unlocked > 0>>
<<linkreplace "Take him to the back room">>
<<replace "#output">>
<div class="text">You tap the desk twice and walk toward the poetry shelf without looking back. He follows at a browser's pace. In the back room he reads the first page standing up, right there, like a starving man eating in the doorway of the kitchen. No book leaves the building and no name goes into any ledger, so an inspection would find exactly nothing.</div>
<<statchange "respect" 3>>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Take him to the back room"</em></div><</replace>>
<</linkreplace>><br>
<</if>>
<<linkreplace "Turn him away">>
<<replace "#output">>
<div class="text">"We don't carry it." His hand comes off the desk slowly, taking the scrap with it. He nods like he expected nothing else and thanks you anyway, which is somehow worse. You spend the rest of the hour shelving books nobody has forbidden yet.</div>
<<statchange "respect" -1>>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Turn him away"</em></div><</replace>>
<</linkreplace>>
</div>
<div id="output"></div>
<<case 2>>
/* Anonymous donation */
<div class="text">Someone has left three boxes of books on the step overnight - no note, no name, packed with the care of a person who couldn't keep them and couldn't burn them either. Most of it is reading-copy junk. But at the bottom of the last box, wrapped in a pillowcase, sits a first edition that would fetch real money from the collectors on the other side of the wall.</div>
<div id="choice-container">
<<linkreplace "Sell it quietly ($15)">>
<<replace "#output">>
<div class="text">Books don't eat, and the library's roof fund does. A courier takes it out through the blockpost inside a box of regime-approved poetry, and an envelope comes back two days later. You tell yourself whoever left it on a doorstep in the dark gave up their vote on what happens next.</div>
<<statchange "money" 15>>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Sell it quietly ($15)"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Shelve it">>
<<replace "#output">>
<div class="text">You put it behind the desk glass where the light can't fade it, with a card that says DONATED and nothing else. Ella finds it that afternoon and goes very quiet, turning it over with both hands. People notice things like that here. A place that doesn't sell what it's given is a place you can give things to.</div>
<<statchange "respect" 3>>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Shelve it"</em></div><</replace>>
<</linkreplace>>
</div>
<div id="output"></div>
<<case 3>>
/* Kids' reading hour - the wolf voice */
<div class="text">You walk in on reading hour at full riot. Ella is holding the picture book with the paper sun - the one from the salvage pile - and a dozen kids are packed on the rug in front of her. She spots you over their heads and her grin turns criminal.</div>
<<speech "Ella" "And here comes our special guest, who does the BEST wolf voice in the neighborhood. Don't you, sir.">>
<div class="text">You do not do the best wolf voice in the neighborhood. You do it anyway, twelve times, because the audience demands encores and Ella enforces the demands. By the end your throat is sandpaper and one small girl informs you gravely that the old wolf was better. Ella laughs so hard she has to sit down on the rug with them.</div>
<<statchange "energy" -2>>
<<statchange "respect" 3>>
<<case 4>>
/* The cigarette man moves indoors */
<div class="text">The man with the long-burning cigarette is in the periodicals corner. No cigarette in here - Ella's one iron law - but it's him: same coat, same patience, a newspaper he isn't reading held at an angle that covers everything but his eyes. His lips move slightly when anyone signs the guest book. The precinct pays by the name, and the library is full of names now.</div>
<div id="choice-container">
<<linkreplace "Warn Ella quietly">>
<<replace "#output">>
<div class="text">You tell her over the returns cart, in the voice you'd use to discuss a late fee. She doesn't look at him - she's learned the same rules the bartender knows. That afternoon the guest book develops a fault: the pen at the desk runs dry, and somehow stays dry, and people just stop signing in. He can memorize faces all he wants. Faces aren't names.</div>
<<statchange "respect" 2>>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Warn Ella quietly"</em></div><</replace>>
<</linkreplace>><br>
<<if $heat < 75>>
<<linkreplace "Sit down across from him">>
<<replace "#output">>
<div class="text">You take the chair opposite and read for a while, companionably. Then, without lowering your book, you recommend he try the periodicals on Thursdays - since that's when the unmarked car picks him up anyway, might as well save the round trip. He folds his newspaper with great dignity and leaves. He'll write you up for it. He was going to write you up regardless.</div>
<<statchange "heat" 8>>
<<statchange "respect" 4>>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Sit down across from him"</em></div><</replace>>
<</linkreplace>><br>
<<else>>
<div class="req">He knows exactly who you are. Better not to hand him a headline.</div><br>
<</if>>
<<linkreplace "Leave him to it">>
<<replace "#output">>
<div class="text">A library is public. That's the whole point of it.</div>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Leave him to it"</em></div><</replace>>
<</linkreplace>>
</div>
<div id="output"></div>
<<case 5>>
/* Ella in the stacks - requires $ella_stage >= 6 && $energy >= 3 */
<div class="text">You find Ella reshelving in the back aisle, up on the stepladder, and the look she gives you over her shoulder has absolutely nothing to do with the Dewey decimal system.</div>
<<speech "Ella" "The reading room's empty until four, and I was thinking about putting something in my mouth. You want to help me with that?">>
[[Follow her between the shelves|LibraryQuickie]]
<<case 6>>
/* The old teacher - Oath Boys lore */
<div class="text">An old man in a pressed, threadbare suit waits until you're alone at the desk. He taught history two blocks from here for thirty years, he says, and then he lays two things on the desk with trembling care. The first is a photograph of the library before the fire - full shelves, a banner for the tenant association meeting, kids on the same rug Ella reads on now. The second is a carbon copy of the original citation: NOTICE OF UNREGISTERED ASSEMBLY, with the Oath Boys' torch stamp at the bottom, filed three days before the burning.</div>
<<speech "Old teacher" "They wrote themselves permission first, you see. Even arsonists want paperwork now. I kept the copy because someone should remember it was never about the books. The books just burn brighter than minutes of a tenants' meeting." "default_male">>
<div class="text">He won't take a coffee, won't take a chair, won't leave the photograph - but he lets you photograph the citation, and shows you how to read the reference numbers so you'll recognize the next one before it becomes a fire.</div>
<<statchange "knowledge" 1>>
<<case 7>>
/* Drive-by echo - flavor only */
<div class="text">Through the new windows: an Oath Boys pickup slows to a crawl outside, engine grumbling. The men in the bed look the building over - the glass, the lights, the full reading tables - and then look away first. The truck picks its speed back up and takes the long way around the block. They don't stop at the library anymore. That doesn't mean they've forgotten your face.</div>
<<default>>
<div class="text">A quiet day among the shelves. Pages turn, a kettle mutters behind the desk, and for a few hours the neighborhood gets to pretend it lives somewhere ordinary.</div>
<</switch>>
<</if>>
<</widget>><!-- IMAGE: Oath Boys pickup outside the half-renovated library, armed men in mismatched surplus gear -->
<div class="text">You hear the pickup before you see it - a big diesel making a slow, deliberate pass, then swinging around and mounting the curb in front of the library. Six of them climb out. Surplus-store camo that doesn't match, iron-cross patches sewn on crooked, one armband that was clearly stitched at somebody's kitchen table. The lead one has SS bolts inked on his neck by an artist who'd never seen the real thing.</div>
<div class="text">Behind you, the work stops. Ella comes to the doorway with a paint scraper still in her hand.</div>
<<speech "Oath Boy" "Now this is confusing. We burn a rat nest down, and some boy rebuilds it. You slow, son? The building's been decided on. Official-like." "militiaman">>
<div class="text">Down the street, doors are quietly closing. These are the men who did it - who wrote themselves a citation, waited for dark, and put a neighborhood's only warm room to the torch. Posers in mail-order costumes, and dangerous all the same, because six armed cowards are still six armed men.</div>
<<linkreplace "Step out to meet them">>
<div class="text">You come out slow, hands loose, and stop closer to him than he expected - inside the distance his rifle sling can do anything useful about. And then you don't threaten him.</div>
<<speech "You" "Weight's on your back foot. Sling's too long - I could have that rifle off you before you found the trigger. The camo's from the Sentinel Surplus catalog. Who are you, Temu warriors?">>
<div class="text">Silence. You take one more half-step and lower your voice so only the leader gets the full weight of it.</div>
<<speech "You" "During my three deployments, I've cleared buildings against insurgents who would eat this whole gang of yours before breakfast. They were the real thing, and not a bunch of military cosplayers.">>
<<if $physical >= 55>>
<div class="text">You let him look at you while you say it - at the build under your shirt, at hands that have done this for a living. He flinches first. In front of his own men, he flinches first.</div>
<<else>>
<div class="text">You let him look at you while you say it - at the split lip, at the way you're holding one side, at a week that has plainly not been kind. He looks a beat too long, and you can see him doing the arithmetic and getting the wrong answer. A man who has taken this much and still walked out into the street to meet six of them is not a thing he knows how to price. He flinches first. In front of his own men, he flinches first.</div>
<</if>>
<<if $target1 >= 4>>
<div class="text">Something else crosses his face too - recognition, or the fear of it. You've moved in rooms his masters only guard the doors of, and it hangs on a man like a scent. Whoever he expected to find rebuilding a hood library, it wasn't someone like you.</div>
<</if>>
<div class="text">The lead tries to find his line and comes up with half a slogan, misquoted - one of his own men winces. You watch the fantasy come off them in real time, like paint in the rain. This was supposed to be an easy afternoon - scare a librarian, kick over some scaffolding, then drive home feeling like soldiers. Nobody briefed them on the possibility of standing in the street getting graded on their cosplay by the genuine article, in front of the whole block.</div>
<<speech "Oath Boy" "...Watch yourself, son. This block is ours. All of it." "militiaman">>
<<speech "You" "Then you won't mind it having a library.">>
<div class="text">They mount back up with as much swagger as men can manage while retreating. The diesel bellows, the truck drops off the curb, gone. From the doorway, Ella exhales for the first time in three minutes. Somewhere up the street, someone whistles the long-short-long, and the block breathes again.</div>
<div class="text">Word of it will travel - to the neighborhood, which is good, and to their command, which is not. Out on the streets they're still what they always were - armed men in numbers, and humiliated now on top of it, which makes them worse. But the library just became expensive. Coming back here means explaining, again, in front of everyone, why six of them couldn't handle one unarmed man.</div>
<<nobr>>
<<set $library_standoff = 2>>
<<statchange "respect" 10>>
<<statchange "heat" 5>>
<</nobr>>
[[Back to the renovation|Community Center]]
<</linkreplace>><div class="text">As soon as the door closes behind you, Ella unzips your pants and pulls out your hardening cock.</div>
<<speech "Ella" "We don't have much time...">>
<<video "img/ella/quick_bj.mp4">>
<div class="text">She starts sucking you off and even attempts to deepthroat you. She's getting better at handling your massive size, and you enjoy her mouthwork immensely.</div>
<<speech "You" "Oh, you ARE a hungry girl. Ready for some snacks?">>
<<video "img/ella/quick_facial.mp4">>
<div class="text">There is no time to waste, as any time someone may spot you; you start jerking off on Ella's face and cover it with your cum. Most of it goes in her hungry mouth, but significant amounts splatter all over her face.</div>
<<speech "Ella" "So sloppy... I better clean this up before anyone sees.">>
<div class="text">She's back at the desk with three minutes to spare, collar straight, stamping returns.</div>
<<statchange "energy" -3>>
[[Back to the library|Community Center]]<<pic "img/general/library_1.jpg" "location">>
<div class="text">The back room doesn't exist. There's a poetry shelf on a hinge, and behind it a space the size of a generous closet: one chair, one lamp, and the shelf of books that would earn the whole building a second fire. This is where you do your real reading - banned history, and pamphlets that explain in plain language what the regime works so hard to keep confusing.</div>
<<statchange "knowledge" 5>>
<<statchange "energy" -5>>
<<if random(1, 100) <= 15>>
<div class="text">On your way out, a kid from the food line meets your eyes and glances - just for a half-second - at the lamplight leaking under the poetry shelf. He says nothing. He noticed. Someday, someone worse will.</div>
<<statchange "heat" 8>>
<</if>>
[[Back to the library|Community Center]]<<set $reading_hour_day = $day>>
<div class="text">You host the reading hour yourself today - a rug full of kids, a stack of picture books, and a room of mothers who came for the childcare and stayed for the only quiet hour their week allows. You do the voices. All of them. Your wolf remains, by unanimous committee decision, worse than the old wolf, and you take the note with soldierly grace.</div>
<<statchange "energy" -3>>
<<statchange "respect" 4>>
<<if random(1, 100) <= 25>>
<div class="text">On the way out, one of the mothers presses a folded bill into your hand with both of hers, in the invisible way charity travels here - downhill, quietly. "For the books," she says, in a tone that closes the subject.</div>
<<statchange "money" 5>>
<</if>>
[[Back to the library|Community Center]]You help the little community center that is forming around the library. They always need some extra hands, and your help is very appreciated.
<<statchange "energy" -3>>
<<statchange "respect" 3>>
<<return>><<if ndef $linda_stage>><<set $linda_stage = 0>><<set $linda_next_day = 0>><</if>>
<<if not $detention_job || $school_time isnot "afternoon" || $linda_stage != 0 || $school_rep < 10 || $energy < 2>>
<<if $energy < 2>>
<p>You need 2 energy for Linda's detention session.</p>
<<else>>
<p>There is nobody waiting for you in room 019.</p>
<</if>>
[[Back to the hallway|Hallway]]
<<else>>
<p>She is Linda Sweet, eighteen, an adult senior with perfect marks, a scholarship application in every teacher's inbox, and the sort of tidy reputation that makes people assume they know her. Her fingers worry the strap of her bag while her green eyes keep coming back to you.</p>
<<speech "Linda" "I heard the stories. About you. I wanted to know if the saying is real." "linda">>
<<speech "You" "Saying?" >>
<<speech "Linda" "The... once-you-go-black one. I am not saying I believe it. I just keep hearing it, and I keep thinking about it when I should be studying..." "linda">>
<<pic "img/school/linda/linda_2.jpg" "story">>
<p>She flushes, then makes herself hold your gaze.</p>
<<speech "Linda" "Girls in lockers keep talking about life-changing BBC..." "linda">>
<<speech "Linda" "But I have a boyfriend, and I am definitely not cheating on him like that. So if you agree to show me the black side, it is my ass. Only my ass." "linda">>
<<speech "You" "You do not have to invent a rule for me. You can leave, or you can tell me exactly what you want." >>
<p>Linda swallows. Instead of leaving, she locks the door, bends over the teacher's desk, and reaches into her bag for a bottle of lube with a pharmacist's neat little label peeled away.</p>
<<speech "Linda" "I want to feel a big black cock in my ass. I want you to stretch it so bad it will be ruined for every other white guy after you." "linda">>
<<speech "You" "Sheesh. Tell me to stop and I stop. You set the pace." >>
<p>She nods too quickly, then slows when your first careful touch makes the fantasy real. You work her open with patience, keeping one hand on her hip while she learns to breathe through the stretch. Her polished, breathless answers collapse into moans when you finally press your thick cock into her waiting ass.</p>
<<video "img/school/linda/linda_stretch_0.webm">>
<p>Linda claws at the desk, pushing back whenever you pause. You take her from behind in slow, deep strokes until the tight little ring has relaxed around you and her ass hangs flushed and loose after you pull free. She reaches back as if she cannot quite believe what she asked you to do.</p>
<<speech "Linda" "I thought I would hate it. I really, really did not." "linda">>
<<set $linda_stage = 1>>
<<set $linda_next_day = $day + 2>>
<<statchange "energy" -2>>
<div class="req">She'll find you when she realizes she indeed can't go back.</div>
[[Lock up|Hallway]]
<</if>><<if ndef $linda_stage>><<set $linda_stage = 0>><<set $linda_next_day = 0>><</if>>
<<if $linda_stage != 1 || $day < $linda_next_day || $energy < 2>>
<<if $energy < 2>>
<p>You need 2 energy for another session with Linda.</p>
<<else>>
<p>Your closet is empty except for the mop bucket and the hum of the light.</p>
<</if>>
[[Back to the closet|Closet]]
<<else>>
<<pic "img/school/linda/linda_4.jpg" "story">>
<p>Linda is already naked when you close the door. Her blazer is folded on the shelf beside the paint cans, her underwear tucked precisely inside one shoe. She looks less like the girl from detention now and more like someone who has spent two days arguing with herself and lost.</p>
<<speech "You" "You took your time coming back." >>
<<speech "Linda" "I tried not to. But I'm having this itch... and my butt feels so empty without yout massive black cock deep inside it." "linda">>
<<speech "Linda" "I kept thinking about it. Please. I need your black dick in my butt again." "linda">>
<<speech "You" "Still calling this not cheating?" >>
<<speech "Linda" "My bf can still hve my pussy, like I care. I know where the real pleasure is." "linda">>
<<video "img/school/linda/linda_stretch_1.webm">>
<p>You make her say what she wants, then guide her over the old couch. She takes you easier this time, wet with lube and impatient enough to pull you back inside whenever you try to slow down. The room fills with the creak of springs and her muffled little cries as you pump her ass until it is red, swollen, and unable to close.</p>
<<pic "img/school/linda/linda_gape.jpg" "story">>
<p>When you ease out, Linda reaches back and feels the open gape with stunned fingers. You tell her she is ready for more now - unless she wants you to stop. She shakes her head before you finish the sentence.</p>
<<speech "Linda" "Stop? I cannot imagine going back to my boyfriend's pathetic white dick and pretending this did not happen." "linda">>
<<speech "Linda" "He is sweet. He has never done anything wrong. That almost makes it worse, because I keep looking at him and wondering why I want this so badly instead." "linda">>
<<if $incel_path == 2 && $incel_stage >= 11>>
<p>You tell her the boys in room 021 know how to follow directions, and that tomorrow she can decide whether she wants to meet them. Her frightened smile is not a no.</p>
<<else>>
<p>You tell her there may be more to show her someday. For now, she dresses with shaking hands and leaves carrying the secret between her thighs.</p>
<</if>>
<<set $linda_stage = 2>>
<<set $linda_next_day = $day + 1>>
<<statchange "energy" -2>>
<<if $incel_path == 2 && $incel_stage >= 11>><div class="req">Linda is considering the room 021 invitation. Come back tomorrow.</div><</if>>
[[Back to the closet|Closet]]
<</if>><<if ndef $linda_stage>><<set $linda_stage = 0>><<set $linda_next_day = 0>><</if>>
<<if $linda_stage != 2 || $incel_path != 2 || $incel_stage < 11 || $day < $linda_next_day || $energy < 3>>
<<if $energy < 3>>
<p>You need 3 energy for Linda's room 021 session.</p>
<<else>>
<p>Room 021 is not ready for Linda tonight.</p>
<</if>>
[[Back to room 021|Incel Club]]
<<else>>
<<speech "You" "Hey guys, a little surprise for you!." >>
<p>Linda reaches room 021 in her neat school clothes, then stops when she sees the boys waiting in a loose circle around the old couch.</p>
<<speech "You" "You can leave. You can change your mind. Nobody touches you until you say so." >>
<<speech "Linda" "I almost turned around three times on the way here. But if one black dick was enough to turn me into anal-obsessed snowbunny, what about four?" "linda">>
<<speech "You" "You do not owe any of us a performance. Make the choice for yourself." >>
<p>Linda looks at each of them, takes a long breath, and gets on her knees.</p>
<<speech "Linda" "It is not cheating when it is only a blowjob, right?" "linda">>
<<video "img/school/linda/linda_1.webm">>
<p>The boys surround her as Linda takes them one by one, trading careful strokes and wet kisses between the cocks around her.</p>
<<speech "Terrence" "Look at her. Little miss perfect came in here to see if the rumors were true, and now she cannot get enough dick in her mouth." "terrence">>
<<video "img/school/linda/blowbang.webm">>
<p>By the time you lift her to the couch, Linda is openly begging and pushes her greedy ass up in the air. You lube her thoroughly, and let the boys have at it. Before she knows it, a second black cock enters her loose anus.</p>
<<speech "Linda" "Oh fuck, my ass is ruined!" "linda">>
<<speech "Devin" "Yeah, baby, two in one hole!" "devin">>
<<video "img/school/linda/linda_dap_1.webm">>
<p>Her body gives way around the double stretch. The boys watch her face, not just the obscene sight between her thighs, and stop whenever you signal. By the end, she is riding the double-stacked cocks herself, stretching her butt beyond any reasonable limits.</p>
<<speech "Aaron" "Look at her go! Her boyfriend would be so proud of her." "aaron">>
<<speech "Terrence" "He can keep taking her on dates. We are the ones turning her into a greedy little anal slut." "terrence">>
<<speech "Linda" "Yes! I'm you anal slut! I'm addicted to your black cocks!" "linda">>
<<video "img/school/linda/linda_dap_2.webm">>
<p>At last you pull her upright between you. The room breaks into motion as the boys line up around her face; Linda opens her mouth, laughs once at the absurdity of it, and then lets the final heavy spurts paint her cheeks, tongue, and red hair.</p>
<<speech "Terrence" "That's it. Looking good, Linda!" "terrence">>
<<pic "img/school/linda/facial.webp" "story">>
<p>She sits in the wrecked classroom blinking through the mess, her once-perfect composure gone and a shameless, satisfied smile replacing it.</p>
<<speech "Linda" "I think I'm done with my boyfriend. Thanks. I'm never going back." "linda">>
<<set $linda_stage = 3>>
<<statchange "energy" -3>>
[[Back to the hallway|Hallway]]
<</if>><<if $incel_path == 2>>
<p>You find him in 021 with the back off somebody's Chromebook and three screwdrivers held in his mouth, next to the dead rack in the corner that has no business still working. Aaron and Devin are on the couch losing to each other at something loud, under a board that still says <<if $pollock_route == 1>>GROUP PROJECT<<else>>RACISM in your handwriting<</if>>, because nobody in this room wants to be the one who wipes it.</p>
<<else>>
<p>You find him in 021 with the back off somebody's Chromebook and three screwdrivers held in his mouth, next to the dead rack in the corner that has no business still working. There's a repair queue on the whiteboard in his handwriting now, nine lines long, with Mrs. Albright's laptop at the top and somebody's little sister's tablet at the bottom. Aaron and Devin are on the couch losing to each other at something loud, and Isaiah is doing homework at his old desk with his headphones on.</p>
<</if>>
<<speech "Terrence" "Give me a minute, this hinge is - " "terrence">>
<<speech "You" "Terrence. Bring a laptop that isn't yours.">>
<p>The screwdrivers come out of his mouth. He's known you long enough to hear the difference between the voice that opens doors and the voice that closes them, and he follows you into the corridor with Mrs. Albright's machine under his arm. Behind you Aaron says something about it being unfair, and Devin tells him to shut up.</p>
<<if $pollock_route == 1>>
<p>You put the security key on the keyboard between you, still zip-tied to the white card, and his face changes before it touches the keys. The first time he held it, his fly was still open.</p>
<<pic "img/school/syren/access.jpg" "story">>
<<speech "Terrence" "I said I wasn't going to ask what it's for." "terrence">>
<<speech "You" "You're not asking. You're reading it, on her machine, not yours.">>
<<speech "Terrence" "The login the audit doesn't see..." "terrence">>
<<else>>
<p>You put the key on the keyboard between you. It's black and stubby and looks like a pendrive, still zip-tied to a white card, and you keep your thumb on the card so he only gets the one thing.</p>
<<pic "img/school/syren/access.jpg" "story">>
<<speech "You" "Tell me what that is. On her machine, not yours.">>
<<speech "Terrence" "Looks like a drive, but it's a two-factor security key. There's hardly anything on it, just a username and a certificate." "terrence">>
<p>Then he reads it properly and stops talking, which you've never seen him do.</p>
<</if>>
<<speech "Terrence" "That's not a person. That's a service account for the student information system, the old maintenance one from before they changed the audit schema. The key is its second factor, so it still works." "terrence">>
<<speech "You" "Can you search on it?">>
<<if $incel_path == 2>>
<<speech "Terrence" "I can do anything on it. Who are we looking for?" "terrence">>
<<else>>
<<speech "Terrence" "I can do anything on it, which is kind of the problem. What am I searching?" "terrence">>
<</if>>
<p>Female, final year, eighteen, father employed by state corrections. You've carried that around since <<if $school_intro_location == "bar">>the night in the bar<<else>>the day Jamal laid it out for you<</if>>, and everything since has been mopping: the coveralls, the master key, a principal on her knees, all of it so a man with a bucket could stand in a corridor and ask for one row, and when you finally say it out loud it sounds smaller than it has felt.</p>
<<speech "You" "Protected records. Kids whose home address is hidden.">>
<<speech "Terrence" "Confidentiality flag. It's a checkbox - cops' kids, judges, corrections, a couple of restraining orders. Fourteen. Grade twelve, six. Girls, three..." "terrence">>
<p>The screen chews on it for one long breath and returns exactly one row.</p>
<p style="font-family: monospace;">COLLINS, MADISON R. - GR 12 - AGE 18<br>PROTECTION REASON<br>FATHER: COLLINS, R. - DEPT. OF CORRECTIONS - FACILITY 9</p>
<p>Facility 9. It's the one holding Jeremy.</p>
<p>She has been in this building the whole time. You've mopped her corridor a hundred times and never once looked at her face.</p>
<<pic "img/school/madi/portrait.jpg" "story">>
<<speech "Terrence" "Madi?" "terrence">>
<<if $incel_path == 2>>
<p>He says it the way you say the name of somebody you sit next to, and then he looks up at you, and you can see him decide what the search was for.</p>
<<speech "Terrence" "Madi Collins? Sir, she's not even on our ranking. Cross country, yearbook, takes the activity bus home. Nobody looks twice at her." "terrence">>
<<speech "Terrence" "Now that I think about it, she would look nice on the black background." "terrence">>
<<speech "You" "Stop.">>
<<speech "You" "Locker audit. Facilities want the confidential ones re-keyed before the inspection. Hers came up.">>
<p>It's a bad lie and he's a smart kid, and he doesn't even bother weighing it. He just grins like you've let him in on something, and you'd rather he'd called you a liar.</p>
<<speech "Terrence" "Locker audit. Sure." "terrence">>
<<speech "You" "She's not for you, and she's not for the list. You never saw that row.">>
<p>The grin goes. He's sat through every lesson you've given in that room, and he has never once heard you use this voice about a girl.</p>
<<speech "Terrence" "Understood. It's gone." "terrence">>
<<speech "Terrence" "I'm clearing the recent files anyway. Mrs. Albright doesn't need to know her laptop looked at that." "terrence">>
<p>You walk back to your cart with the name in your head and a cold spot under your ribs where the key was. You taught that boy to look at a woman and work out what she's for, and he learned it so well that he'd sized up a girl off a database row before you finished reading it. Adriana would have charged you a hundred dollars and forgotten the name by morning, and Terrence has never forgotten anything in his life.</p>
<<else>>
<p>He says it the way you say the name of somebody you sit next to.</p>
<<speech "Terrence" "Madi Collins. She did the yearbook layout for the robotics page and made us reshoot the group photo because I blinked. Runs cross country, rides the activity bus. She's nice. She's - she's nobody." "terrence">>
<p>He hears himself say it. Rankings were most of what he used to read aloud in 019 in that scripture voice, and you've been taking them apart with the four of them in 021 one session at a time.</p>
<<speech "Terrence" "Why are you looking for Madi?" "terrence">>
<<speech "You" "Locker audit. Facilities want the confidential ones re-keyed before the inspection. Hers came up.">>
<p>It's a bad lie and he's a smart kid. He hears it and weighs it, and you can see him decide to believe you anyway, because you're the man who opened 021 back up for them and sat in it with them, and there aren't many grown men he lets himself trust.</p>
<<speech "Terrence" "Her address is hidden because somebody decided it had to be. You know that, right?" "terrence">>
<<speech "You" "I know.">>
<<speech "Terrence" "Okay." "terrence">>
<<speech "Terrence" "I'm clearing the recent files. Mrs. Albright doesn't need to know her laptop looked at that, and Madi doesn't need to know anybody did." "terrence">>
<p>You walk back to your cart with the name in your head and a cold spot under your ribs where the key was. You stood at the front of that room telling him girls are people, and he believed you enough to pull one up for you off a borrowed laptop. Adriana would have charged you a hundred dollars and forgotten the name by morning, but Terrence is going to pass Madi in the corridor tomorrow and wonder.</p>
<</if>>
<<set $database_access = 2>>
<<statchange "energy" -1>>
<div class="req">You have the name. Before you do anything, you may want to report to Jamal.</div>
[[Back to work|Hallway]]<<pic "img/general/laptop.jpg" "location">>
<p>The card and the security key sit on the folding table under the lamp.</p>
<p>You type your status report:</p>
<<speech "You" "Pollock's finished. The school's under control - her, her building, her keys. She handed over a facilities master card and a security key for a district login nobody audits. And I've got the name. Collins, Madison R., grade 12, eighteen. Father R. Collins, Department of Corrections, Facility 9.">>
<p>You lean back in your chair. You didn't really expect a response right away, but to your surprise Jamal seems to be online.</p>
<<speech "Jamal" "Good job. One step closer to your brother. Who ran the query?">>
<<speech "You" "A kid at the school. Senior. He's inside their systems anyway.">>
<<speech "Jamal" "He see the name?">>
<<speech "You" "...Yes.">>
<p>The cursor blinks long enough that you check the connection.</p>
<<speech "Jamal" "He get told nothing else. Not her daddy, not the facility, not us. Ever.">>
<<speech "You" "Copy.">>
<<speech "Jamal" "Good. Now the girl. Same as Bond: devices, profile, feed her the road and let her walk down it herself. She the route, her daddy the target. One day he get shown a video of his little girl and offered a choice between helping us and the whole facility watching it in the break room.">>
<p>He types it the way he'd type a bus timetable, another target, another wall holding another man up, and you sit there with a picture in your head that he doesn't have: an innocent girl who has done nothing to anybody will get her life upturned just because she happens to be standing between you and your brother.</p>
<<pic "img/school/madi/report.jpg" "story">>
<p>Things like this will keep you up at night.</p>
<<speech "Jamal" "Don't put that key in nothing of ours. Not that laptop, not no phone. Take both pieces to Adriana, in your hand, prepare same play as Bond. She already got half the door open.">>
<<speech "You" "Copy.">>
<<set $database_access = 3>>
<div class="req">Next stop - Adriana's lair.</div>
[[Close the laptop|The hideout]]<<pic "img/general/hackerlair.jpg" "location">>
<p>Adriana spins her chair through a hundred and eighty degrees of monitor glow, puts her feet on a crate, and looks at you like a girl who has been waiting all morning to be entertained.</p>
<<speech "Adriana" "You've got the face. The one you had when Jamal's letter said Mrs. Bond. Put it on the desk, daddy.">>
<p>You put it on the desk: the white card, the security key, the zip tie through the punch hole.</p>
<<pic "img/school/syren/access.jpg" "story">>
<p>She picks up the card first and goes quiet, which from her is the loudest review available. She turns it over twice under the lamp and taps a nail on the blank face where a photo and a name should be.</p>
<<speech "Adriana" "No photo, no name, no expiry, no holder. This is a facilities directorate master.">>
<p>The key she holds between two fingers like something out of a gutter, plugs into a reader on the bench, and types. Then she leans in.</p>
<<speech "Adriana" "Hardware second factor for a service account. Student information system, pre-audit schema, logs to a table nobody's read since the vendor changed hands. There's almost nothing on the key itself, one username and a certificate. The woman knew exactly what she was giving you.">>
<<speech "Adriana" "And somebody ran it from inside the building recently. One query, protected flags. That wasn't you, sweetie. You don't know what a flag is.">>
<<speech "You" "A kid at the school. He used the key, I got the name, it's done.">>
<p>She files that somewhere behind her eyes and says nothing about it yet.</p>
<hr>
<<speech "You" "New target. Collins, Madison. Senior, eighteen, cross country, yearbook, activity bus. Her father is a corrections officer at Facility 9.">>
<p>You don't have to say whose facility it is. She knows which number your brother sits behind.</p>
<<speech "You" "Same as Mrs. Bond. Devices, profile, feed her the road. You already own the school she lives in eight hours a day - grades, cameras, whatever she logs into in that building - and I just gave you full access to it.">>
<<speech "Adriana" "Savannah Bond was married, rich and bored. You're asking me for a young impressionable girl in a high school. That's the easiest profile that exists, baby. Someone looks at her like she's the most important thing in the room, and the rest is scheduling.">>
<<speech "You" "So name the price. Money, service, or entertainment.">>
<<speech "Adriana" "No.">>
<p>You wait for the rest of the sentence.</p>
<<speech "Adriana" "No, because you can't buy what you're asking for, not from here. What you brought me is a login to the systems that face the internet. Great for one query. The camera recorder takes the same login, but only from a machine plugged into the school's own network, and I'm not in the school. Useless for owning a girl.">>
<<speech "Adriana" "Everything that matters lives inside the school. Door controllers, the camera recorder, the wifi every phone on that campus joins at two minutes past eight and doesn't leave till the last bus. That stack sits on a rack in a basement room and it does not face the internet.">>
<p>She holds up something off the bench: a black plastic box the size of a paperback, two stubby antennas, a fan grille, no label.</p>
<<speech "Adriana" "This goes on that rack. One cable, one power lead, its own cellular modem. Then I own the building - eleven hundred phones, and one of them is Madison Collins. And you're going to tell me you'll walk it in there on your master card, and then what? Pick a port on a managed switch? Spoof a MAC so it reads like something that belongs? You don't know how.">>
<<speech "You" "No.">>
<<speech "Adriana" "No. But the one who ran your query does. How old?">>
<<speech "You" "Eighteen. Senior.">>
<<if $incel_path == 2>>
<<speech "Adriana" "Black? One of your basement boys, I bet. The gangbang team I retooled my housewife material for?">>
<<speech "You" "...yes.">>
<<if $incel_stage >= 10>>
<<speech "Adriana" "So he's seen my tape. Your whole class has, blown up ten feet wide on a basement wall.">>
<p>She bites her lip, and you can't tell whether it's the service account or the tape doing it.</p>
<<speech "Adriana" "A boy who can read a service account and has already been through my portfolio. Hook us up, daddy.">>
<<else>>
<<speech "Adriana" "I made slides for that boy's dick, and nobody told me there was a brain attached. You've been holding out on me, daddy. Hook us up.">>
<</if>>
<<else>>
<<speech "Adriana" "Black? One of your incels, I bet. The support group you've been feeding my memes to?">>
<<speech "You" "...yes.">>
<<speech "Adriana" "Is it taking? I told you I couldn't promise anything.">>
<<speech "You" "He's trying. Most days he talks to girls like they're people.">>
<<speech "Adriana" "Aww. So you've been teaching him a woman doesn't owe him anything, and now I get to be the one who shows him what it's like when she wants to give it to him anyway. I can teach that boy a lot, daddy. Hook us up.">>
<</if>>
<p>Jamal would hate a student on the line for this, and Jamal isn't in the room.</p>
<div id="choice-container">
<<linkreplace "Agree to hook them up">>
<<set $terrence_deal = 1>>
<<set $server_stage = 1>>
<<replace "#output">>
<<speech "You" "Get your box on the rack. I'll bring you the boy who put it there.">>
<<speech "Adriana" "After the install he comes here, and I'll teach him a thing or two.">>
<p>She drops the black box into your palm.</p>
<<statchange "energy" -1>>
<div class="req">The box is in your pocket. At school, in the afternoon: put the server room to Terrence.</div>
[[Catch the bus back|The Hood]]
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Hook them up"</em></div><</replace>>
<</linkreplace>><br>
<<if $money >= 100>>
<<linkreplace "Pay her like Mrs. Bond ($100)">>
<<set $terrence_deal = 2>>
<<set $server_stage = 1>>
<<replace "#output">>
<<if $incel_path == 2>>
<<speech "You" "No. You'd have that boy so wound up about you he'd plug your box into the wrong port. A hundred, same as Bond, and you do the profile work.">>
<<else>>
<<speech "You" "No. It took long enough to drag that kid out of the hole he dug on the internet, and I'm not handing him over to you. A hundred, same as Bond, and you do the profile work.">>
<</if>>
<p>She looks at the money the way she looked at the key.</p>
<<speech "Adriana" "Fine. Cash buys the profile. It does not buy me a door - the box still goes on that rack, somebody who isn't you still has to put it there, and now he's your problem to pay. You just made this boring, daddy.">>
<p>She drops the black box into your palm anyway.</p>
<<statchange "money" -100>>
<<statchange "energy" -1>>
<div class="req">The box is in your pocket. At school, in the afternoon: put the server room to Terrence. Adriana isn't paying him now, so whatever he wants for the job, he'll ask you.</div>
[[Catch the bus back|The Hood]]
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Pay her like Mrs. Bond ($100)"</em></div><</replace>>
<</linkreplace>><br>
<<else>>
<div class="req">You could pay her off like Mrs. Bond, if you had $100. (You have <<print "$" + $money>>.)</div>
<</if>>
<<if $hacker_level == 8>>
<<linkreplace "Offer her the princess night instead">>
<<set $terrence_deal = 3>>
<<set $server_stage = 1>>
<<replace "#output">>
<<speech "You" "You said no to entertainment. That list you gave me isn't entertainment.">>
<p>Adriana opens her mouth to say no again, and nothing comes out. You watch her work it through: the dress, the crown and the one hole she's been saving, set down on her desk next to a stolen service account as one more thing to trade.</p>
<<speech "Adriana" "Wow. You're paying for a whole school with my ass. And you're doing it so you don't have to share a boy with me.">>
<<speech "You" "Yes.">>
<<if $hacker_gh_stage == 3>>
<<speech "Adriana" "You sold my mouth for a fiver at that gloryhole. Now my ass buys a building. Look at me, getting promoted.">>
<</if>>
<<speech "Adriana" "That's the most insulting offer anybody has ever made me, and I'm wet enough to prove I'm taking it. Don't look so smug.">>
<p>She drops the black box into your palm and closes your fingers over it.</p>
<<speech "Adriana" "Same rules as cash, though. You still can't put that on a rack, so somebody who isn't you does it, and he's your problem to handle. He is not my prize.">>
<<statchange "energy" -1>>
<div class="req">The box is in your pocket. At school, in the afternoon: put the server room to Terrence. You owe Adriana her princess night<<if not setup.princess.ready()>> - finish her list first<</if>>.</div>
<<if setup.princess.ready() && $hacked_had_sex_today == 0 && $energy >= 5>>
[[The dress is already here. Tonight, then|Adriana Princess Night]]<br>
<</if>>
[[Catch the bus back|The Hood]]
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Offer her the princess night instead"</em></div><</replace>>
<</linkreplace>><br>
<</if>>
</div>
<div id="output"></div><!-- IMAGE: east corridor - a girl at a locker, ordinary in a school of money -->
<p>You find a reason to work the east corridor at last bell - there's always a reason, that's the whole art of the coveralls - and you watch the lockers with a spotter's patience until the girl from the database appears.</p>
<<pic "img/school/madi/locker.jpg" "story">>
<p>Madi Collins is ordinary, and in this school ordinary is its own kind of conspicuous. No handbag arms race, no orbit of followers - a canvas backpack gone soft at the straps, sneakers past their retirement date.</p>
<p>Jamal's voice comes back up while you're pushing the cart past the trophy case, saying the thing he said about wives and daughters the night this whole school began. A wife wounds a man. His little girl finish him.</p>
<<set $madi_stage = 1>>
<<if $server_stage >= 2>>
<div class="req">Terrence has a night and a rack. Once Adriana is inside that building's systems, Madi Collins stops being a name on a screen. (Continues in the next update.)</div>
<<else>>
<div class="req">Nothing starts here until Adriana is inside the school's network - which means the server room, which means Terrence, once Adriana has named her price.</div>
<</if>>
[[Back to work|Hallway]]<<if $incel_path == 2>>
<p>Terrence is in 021 with his feet up on a desk, showing Aaron and Devin something on his phone with the sound off. All three of them put it away the second you walk in, which tells you exactly what kind of video it was.</p>
<<speech "Terrence" "If this is about the locker audit, I don't know anything about a locker audit." "terrence">>
<<speech "You" "It's about a different machine.">>
<p>He's up and in the corridor before you have to say it twice, and behind him Aaron wants to know if it's a lesson and whether he's invited.</p>
<<else>>
<p>Terrence is on the floor of the alcove outside the second-floor lab, where the good outlets are, walking a girl from the robotics club through two-factor on her laptop like it matters to him that she gets it. He sees you and finishes his sentence anyway, then hands the laptop back before he gets up.</p>
<<speech "Terrence" "Is this about the locker audit?" "terrence">>
<<speech "You" "It's about a different machine.">>
<p>He doesn't smile. He's been carrying Madi's row around since the afternoon with Mrs. Albright's laptop, and he wants you to know he hasn't put it down.</p>
<</if>>
<p>You walk him down past the boiler corridor, where the air goes warm and the paint stops pretending, to a grey door with a card reader beside it and a camera in the ceiling corner watching the handle.</p>
<<speech "You" "What's behind this one?">>
<<pic "img/school/server_room.jpg" "story">>
<p>He looks at the door, then at you, and decides to answer honestly, which is the first good sign.</p>
<<speech "Terrence" "Well... everything. Comms, security, the whole school IT infrastructure." "terrence">>
<<speech "You" "Could you get into that rack, put something small on it, and have nobody find out?">>
<<if $incel_path == 2>>
<p>He takes the question apart and puts it back together in about a second. He doesn't waste your time pretending not to understand it, and he's wearing the look of a kid who just got picked first for something.</p>
<<else>>
<p>You watch him take the question apart and understand that it isn't a hypothetical, and then think about Madi, because the last thing you asked him to do with this school's systems had her name at the end of it.</p>
<<speech "Terrence" "Is anybody going to get hurt?" "terrence">>
<<speech "You" "Nothing you put on that rack is going to hurt anybody.">>
<p>He's smart enough to hear how carefully you built that sentence, and he lets it stand anyway, because he wants to.</p>
<</if>>
<<speech "Terrence" "Define something small." "terrence">>
<p>You pat the chest pocket of your coveralls, where something the size of a paperback has been riding against your ribs since the bus.</p>
<<speech "Terrence" "Okay." "terrence">>
<<speech "Terrence" "Okay, so, if I hang a new device off a live port it shows up as a new MAC on a stack that hasn't seen a new MAC since 2019, and it starts making outbound sessions, and it gets noticed." "terrence">>
<p>He's not talking to you any more. He's walking a circle in the corridor with two fingers pressed to his mouth.</p>
<<speech "Terrence" "Unless. There's four dead ports on the second stack that still have config on them from a print server they binned, and nobody ever cleaned the config. I clone that MAC. To the switch, the new thing IS the printer." "terrence">>
<p>You take the black box out of your pocket. Two stubby antennas, a fan grille, no label anywhere on it.</p>
<<speech "Terrence" "...it already has its own modem." "terrence">>
<<speech "You" "It already has its own modem.">>
<p>He turns it over twice in both hands the way Adriana turned the card over, and for a second the two of them are the same person separated by ten years.</p>
<<speech "Terrence" "Who built this?" "terrence">>
<p>You could lie. He'd know, and the job needs him more than it needs your caution.</p>
<<speech "You" "Somebody better than you. Her name is Adriana. She's a professional.">>
<<if $incel_path == 2 && $incel_stage >= 10>>
<<speech "You" "You've seen her before. My teaching assistant.">>
<p>It takes him a second, and then he's back in 021, naked in front of the projector, watching a brunette on her knees lap her own squirt off the floor while he and the other two empty themselves onto the tiles.</p>
<<speech "Terrence" "She built THIS?" "terrence">>
<p>He holds the box differently after that, like it might still be warm from her.</p>
<<elseif $incel_path == 2>>
<<speech "Terrence" "Is she white?" "terrence">>
<<speech "You" "Focus.">>
<<speech "Terrence" "I'm focused, sir. I'm just asking." "terrence">>
<<else>>
<<speech "Terrence" "Where did she learn to build like this?" "terrence">>
<<speech "You" "Same place you did. Nobody taught her either.">>
<p>He nods at the box, and he doesn't ask what she looks like, which is the first thing he'd have wanted to know back when he was reading Ohio out loud in 019.</p>
<</if>>
<hr>
<<if $terrence_deal == 1>>
<<speech "You" "She wants to meet you. Once the box is on the rack, she will... evaluate your job in person.">>
<<if $incel_path == 2>>
<p>There's no confusion on his face at all, just the look he gets in 021 when a slide comes up that he's already read ahead on.</p>
<<speech "Terrence" "I'll give this snowbunny hacker what she wants." "terrence">>
<<else>>
<<speech "Terrence" "Why would I need to be there in person?" "terrence">>
<<speech "You" "You'll work it out.">>
<<speech "Terrence" "I'll just go, and listen to what she says, and not make it weird." "terrence">>
<p>He's going to walk into a hacker's lair and make it extremely weird, and you decide that's Adriana's problem.</p>
<</if>>
<<else>>
<<if $incel_path == 2>>
<<speech "Terrence" "I want to meet her." "terrence">>
<<speech "You" "No. You don't.">>
<<speech "Terrence" "Okay. Then keep your money. I want the install to be perfect, and I want her to know it was me. She'll ask for me herself after that." "terrence">>
<<else>>
<<speech "Terrence" "Can I at least meet her?" "terrence">>
<<speech "You" "No.">>
<<speech "Terrence" "Okay. Then I don't want paying. I want the install to be perfect, and I want her to know it was. That's the fee." "terrence">>
<p>It would sit easier with you if he'd asked for money.</p>
<</if>>
<</if>>
<<speech "Terrence" "I got it. I need a day." "terrence">>
<<set $server_stage = 2>>
<<statchange "energy" -1>>
<div class="req">Soon this building will fall under full control of Adriana. (Continues in the next update.)</div>
[[Back to work|Hallway]]/* ARCHIVED: the nightclub is not going into the next release - whole passage commented out.
<!-- IMAGE: nightclub exterior at night - velvet rope, private security SUVs, expensive cars parked in a ruined street -->
<<if visited() == 1>><div class="text">Club Babylon is the one address in the neighborhood the outside world knows. Twice a week the checkpoint waves through a convoy of German sedans and party buses, and the wealthy come slumming - silk shirts and bodyguards, downtown girls in heels picking their way over broken asphalt like it's a safari. For them it's an adventure with valet parking. For the neighborhood it's the only faucet that drips real money. The management understands the arrangement perfectly: the guests must feel dangerous, and must never actually be in danger.</div><</if>>
<p>Bass hums through the pavement half a block out. Out front, private security in tailored black checks faces against a tablet while a queue of locals waits at a side door that opens far less often.</p>
<<set _entered = false>>
<<if $nightclub_job == 1>>
<p>The head of security nods you through the staff entrance. No cover for the help.</p>
<<set _entered = true>>
<<elseif $money >= 10>>
<p>Locals pay at the side door. The outsiders, of course, are comped - their money is wanted inside, at the bar, in bottles.</p>
<<statchange "money" -10>>
<<set _entered = true>>
<<else>>
<div class="req">Cover charge is $10 for locals, and your pockets are empty. The doorman doesn't do credit.</div>
<</if>>
<<nobr>>
<<if _entered>>
<<linkreplace "Buy a drink and work the room">>
<<if $money >= 8>>
<<statchange "money" -8>>
<<if random(1, 100) <= 50>>
<p>You post up at the bar between a bottle-service waitress on her break and a DJ's cousin who knows everybody. Down here, the staff are the neighborhood - and the neighborhood notices who buys a round.</p>
<<statchange "respect" 3>>
<<else>>
<p>Eight dollars for a beer that costs one across the street. You drink it slowly, watching a table of outsiders film themselves being brave.</p>
<</if>>
<<else>><p>Club prices. You can't even afford the beer here.</p><</if>>
<</linkreplace>><br>
<<linkreplace "Hit the dance floor">>
<<if $energy >= 2>>
<<statchange "energy" -2>>
<<set _dance = random(1, 5)>>
<<switch _dance>>
<<case 1>>
<p>The floor is a truce zone: local girls dancing in a closed circle, outsider men orbiting with drinks they hope are invitations. You move through it easily - you're the one thing in the room that belongs.</p>
<<case 2>>
<!-- VIDEO: club dance floor, grinding crowd, strobe light -->
<p>A downtown blonde in a dress worth your monthly rent dances progressively closer, her friends filming and shrieking. She wants the "hood experience" for her feed. You give her exactly enough to keep the legend alive and nothing she could take home.</p>
<<case 3>>
<p>The DJ drops something twenty years old and for three minutes the whole neighborhood side of the floor moves like one body. Even the bottle-service girls come out. The outsiders film it. They always film it.</p>
<<case 4>>
<p>Two outsider men in matching watches try dancing at a local girl who has told them no twice. Her brother materializes; club security materializes faster - and escorts <i>the brother</i> toward the door. The rules of the house, written in plain sight.</p>
<<case 5>>
<p>You dance alone for a while, sweating out the week. Sometimes that's all a club has to be.</p>
<</switch>>
(TODO: $nightclub_stage - future hookup arc with a recurring outsider patron starts here)
<<else>><div class="req">You're too exhausted to dance. (2 energy needed)</div><</if>>
<</linkreplace>><br>
<<if $nightclub_job == 0>>
<<if $physical >= 60 && $respect >= 30>>
<<linkreplace "Ask about work">>
<p>The head of security - a retired cage fighter gone gray at the temples - looks you over like a used car with good mileage.</p>
<<speech "Head of Security" "I know your face from the gym. Here's the job: the guests upstairs pay for danger the way they pay for champagne - as decoration. Trouble happens, you end it quiet, and whoever's paying never feels a draft. You bruise a guest, you're done. You bruise a local where a guest can see, you're done. Understood?">>
<p>You understand better than he knows. He hands you a black t-shirt a size too small. You're on the door rotation.</p>
<<set $nightclub_job = 1>>
<</linkreplace>><br>
<<else>>
<div class="req">The security here only hires serious, known men. (60 physical and 30 respect to ask about work)</div>
<</if>>
<</if>>
<<if $nightclub_job == 1>>
<<if $heat >= 75>>
<div class="req">The head of security pulls you aside: "Not tonight. Half the precinct is asking about you - I can't have your face on my door." Come back when the heat dies down.</div>
<<elseif $energy >= 4>>
<<linkreplace "Work the door">>
<<statchange "energy" -4>>
<<statchange "money" 25>>
<<statchange "heat" 2>>
<<set _shift = random(1, 100)>>
<<if _shift <= 20>>
<p>A quiet shift. You check faces, unhook the rope, listen to two drunk financiers explain the neighborhood to each other, getting every detail wrong. The pay lands in your palm at four in the morning, folded around a cigarette.</p>
<<elseif _shift <= 34>>
<p>Somewhere past midnight a guest in an unstructured blazer decides the waitress carrying his bottle came with it. His hand closes on her wrist; her tray doesn't even wobble - she's used to it. That's the worst part.</p>
<<set _doorChoiceMade = false>>
<div id="door-choice">
<<linkreplace "Throw him out">>
<<replace "#door-output">>
<p>You take his wrist off her arm the way you'd take a weapon off a suspect, and walk him to the curb before his bodyguard finishes standing up. The staff side of the room exhales. Management doesn't say anything - but the man was somebody, and somebody's people make calls to the precinct about aggressive local staff.</p>
<<statchange "respect" 5>>
<<statchange "heat" 5>>
<</replace>>
<<replace "#door-choice">><</replace>>
<</linkreplace>><br>
<<linkreplace "Smooth it over">>
<<replace "#door-output">>
<p>You appear at the table with the practiced smile of the service industry, refill his glass, steer his attention to the DJ, and catch the waitress's eye to send her on break. He tips you ten dollars for the excellent service. She won't look at you for the rest of the shift, and you find you can't blame her.</p>
<<statchange "money" 10>>
<</replace>>
<<replace "#door-choice">><</replace>>
<</linkreplace>>
</div>
<div id="door-output"></div>
<<elseif _shift <= 46>>
<p>A VIP arrives with an entourage and a paranoia about being seen. You handle the side entrance, the coat, the discretion. He palms you a bill on the way out like he's done it his whole life. He has.</p>
<<statchange "money" 10>>
<<elseif _shift <= 58>>
<p>Past two, a bottle-service girl finds you at the rope: one of the outsider girls is folded over the bathroom sink, lips going gray, her friends already gone in the last convoy. The house rule is unambiguous - nothing that happens here happened here.</p>
<<set _odChoiceMade = false>>
<div id="od-choice">
<<linkreplace "Call it in properly">>
<<replace "#od-output">>
<p>You radio it in by the book and stay with her until the ambulance the club didn't want arrives. She'll live. The paramedics take your name for the report - a local's name, attached to an incident at the one venue the precinct actually reads about. Management docks you nothing and says nothing. Around here, silence from upstairs is its own kind of memo.</p>
<<statchange "heat" 6>>
<<statchange "respect" 4>>
<</replace>>
<<replace "#od-choice">><</replace>>
<</linkreplace>><br>
<<linkreplace "Handle it the house way">>
<<replace "#od-output">>
<p>You carry her out the fire exit, prop her in the alley in the recovery position, and let the bar-back's cousin - who was a nurse before the licensing purges - do what she can with a flashlight and two fingers on a pulse. The girl comes around retching at dawn and is loaded into a rideshare that will bill her card, not her memory. The house notices how clean it was.</p>
<<statchange "money" 10>>
<</replace>>
<<replace "#od-choice">><</replace>>
<</linkreplace>>
</div>
<div id="od-output"></div>
<<elseif _shift <= 68>>
<p>A kid from the block - fourteen, maybe fifteen, wearing his older brother's jacket with the sleeves rolled - tries to drift in behind a group of outsiders, just to see it. The inside of the one building on his street with unbroken windows.</p>
<p>You catch him by the collar at the threshold, walk him ten steps into the dark, and stand with him a minute where the bass is loudest, letting him look through the glass at the lights and the girls and the money. Then you point him home. "When you're grown, come to the side door and say my name." He grins like you handed him a key. Maybe you did.</p>
<<statchange "respect" 2>>
<<elseif _shift <= 78>>
<p>A face from the feeds arrives - some streaming-famous outsider with two phones filming him being brave. He wants pictures with "real security", his arm around your shoulders, captions about the wall. You stand like furniture while the flash pops. He tips like guilt: generously.</p>
<<statchange "money" 15>>
<<statchange "heat" 2>>
<div class="statchange">(Your face is on somebody's feed now.)</div>
<<elseif _shift <= 86>>
<p>Closing. The bottle-service waitress with the tired eyes and the perfect arithmetic - the one you sent on break the night the guest grabbed her - finds you in the coat check counting the door money. "I pay my debts," she says, hanging the CLOSED sign on the coat check hook, "and I hate owing the door."</p>
<!-- VIDEO: coat check - waitress blowjob among the hanging coats, uniform half-open -->
<p>She goes to her knees on somebody's forgotten scarf and takes you out of your work slacks with the same efficiency she opens champagne, and then her mouth is on you, unhurried, thorough, one hand still holding her tip roll. She sucks you off among the hanging coats with the house music dying in the next room, swallows like a professional at everything she does, and stands up fixing her lipstick in the coat-check mirror.</p>
<<speech "Waitress" "Debt's paid. Doesn't mean it can't run up again.">>
<<elseif _shift <= 92>>
<p>Four militia officers arrive at the rope, out of uniform but not out of habit, and look through you toward the door they expect to open for free.</p>
<<set _militiaChoiceMade = false>>
<div id="militia-choice">
<<linkreplace "Wave them in">>
<<replace "#militia-output">>
<p>You unhook the rope. They don't thank you - gratitude would imply it was yours to give. Inside, they drink without paying there too. The bar-back watches you all night after that, and you understand what your uniform means to him now.</p>
<<statchange "respect" -2>>
<</replace>>
<<replace "#militia-choice">><</replace>>
<</linkreplace>><br>
<<linkreplace "Hold the rope">>
<<replace "#militia-output">>
<p>"Private event," you say, which is true in the sense that all events here are private from men like them. They study your face for a long moment, committing it to whatever passes for memory in the militia. Then they leave - this club has owners with better protection than theirs. The queue at the side door saw the whole thing.</p>
<<statchange "respect" 4>>
<<statchange "heat" 8>>
<</replace>>
<<replace "#militia-choice">><</replace>>
<</linkreplace>>
</div>
<div id="militia-output"></div>
<<else>>
(CUT: street corner is not going into the next release - the dealer door event below was disabled before this whole passage was archived.)
<<if $dealer_stage >= 1>>
<p>You clock one of the corner crew working the smoking terrace, selling wraps to outsiders at triple street price. He clocks you clocking him and freezes - you're the door tonight.</p>
<<set _dealerChoiceMade = false>>
<div id="dealer-choice">
<<linkreplace "Take a cut">>
<<replace "#dealer-output">>
<p>You hold out a flat palm. He sighs the sigh of a man paying a familiar tax and fills it. You go back to the door and see nothing all night.</p>
<<statchange "money" 10>>
<<statchange "heat" 5>>
<</replace>>
<<replace "#dealer-choice">><</replace>>
<</linkreplace>><br>
<<linkreplace "Walk him out quietly">>
<<replace "#dealer-output">>
<p>You steer him out through the kitchen with a hand on his shoulder - no scene, no confiscation, no precinct. "Not where I work," you tell him. He spreads his hands: fair. The kitchen staff note how it was handled. So does he.</p>
<<statchange "respect" 3>>
<</replace>>
<<replace "#dealer-choice">><</replace>>
<</linkreplace>>
</div>
<div id="dealer-output"></div>
<<else>>
(end of the cut dealer branch - the fight fallback below always played while the corner was cut)
<p>A fight sparks on the outsider side - two men who golf together discovering they hate each other. You separate them with the gentleness their lawyers require, and the night rolls on.</p>
<</if>>
<</if>>
<</linkreplace>>
<p>Or ask the head of security for the rope itself - the list, the calls, the judgment. Better money if your judgment is good. Strikes on your record if it isn't.</p>
[[Take the rope yourself|Door Rope]]<br>
<<else>>
<div class="req">You're too tired to work a door shift. (4 energy needed)</div>
<</if>>
<</if>>
(CUT: street corner (drug stash) is not going into the next release - the block below was disabled before this whole passage was archived.)
<<if $drug_stash > 0>>
<<linkreplace "Move product to the rich crowd">>
<p>Outsiders pay triple for the thrill of buying it here - the product is the souvenir.</p>
<<if $nightclub_job == 0 && random(1, 100) <= 15>>
<p>A hand lands on your shoulder mid-handoff. Club security. They don't call the police - bad for the brand - they just empty your pockets into a zip-lock bag, photograph your face, and put you out the fire exit into the alley.</p>
<<set $drug_stash = 0>>
<<statchange "heat" 10>>
<<else>>
<<set _clubsale = $drug_stash * 20>>
<<set _clubheat = $drug_stash * 3>>
<<statchange "money" _clubsale>>
<<statchange "heat" _clubheat>>
<<set $drug_stash = 0>>
<p>The stash evaporates into manicured hands, one bathroom meeting at a time. Easy money - the kind with a hook in it.</p>
<</if>>
<</linkreplace>><br>
<</if>>
(end of the cut drug-stash block)
<</if>>
[[Step back into the night|The Hood]]
<</nobr>>
*//* ARCHIVED: the nightclub is not going into the next release - whole passage commented out.
<!-- IMAGE: nightclub entrance from the bouncer's side - velvet rope, tablet glow, queue in the dark -->
<<if $nightclub_job != 1>>
<div class="req">The rope belongs to the staff. You are not staff.</div>
[[Back|Nightclub]]
<<elseif $heat >= 75>>
<div class="req">The head of security shakes his head before you finish asking. "Not with your heat. The camera across the street would love that."</div>
[[Back|Nightclub]]
<<elseif $energy < 4>>
<div class="req">Working the rope means four hours of judgment calls on your feet. You don't have it tonight. (4 energy needed)</div>
[[Back|Nightclub]]
<<else>>
<<statchange "energy" -4>>
<<statchange "heat" 2>>
<p>The head of security hands you the tablet and the rope like a priest handing over the parish. "Base pay plus five a head for every call you get right. Get most of them wrong and it goes on your record. Three marks and you're back on the neighborhood side of the rope, permanently."</p>
<<set _rule = random(1, 5)>>
<<nobr>>
<<switch _rule>>
<<case 1>>
<<speech "Head of Security" "Standard night. The list is the list, the rules are the rules. Money gets in, trouble stays out, and everything in between is your judgment. Don't make me regret the judgment.">>
<<case 2>>
<<speech "Head of Security" "Private buyout tonight - downtown money rented the whole floor. Outsider list only. Locals do not get in. I don't care whose cousin they are, I don't care if they helped pour the foundation. Not tonight.">>
<<case 3>>
<<speech "Head of Security" "See the van across the street? Militia, with a camera. Tonight, anybody holding ANYTHING turns around at the rope. Anybody. I don't care what their table spends - one photographed handoff and this club has a problem money can't fix.">>
<<case 4>>
<<speech "Head of Security" "Owner's birthday. He wants the floor FULL and the night loud. Everybody gets in - everybody - except trouble. You let a brawler ruin the man's cake and neither of us works here tomorrow.">>
<<case 5>>
<<speech "Head of Security" "Half the staff called in scared after the sweeps. Boss wants bodies and bar sales, period. Swallow your standards - only the genuinely dangerous get turned away tonight.">>
<</switch>>
<<set _pool = [
{ name: "the silk shirt", desc: "An outsider in a shirt worth your rent, cologne arriving before he does. The square outline in his breast pocket is not a cigarette case, and he is not even trying to hide it - down here, it is the accessory.", call: "pass", local: false, holding: true, trouble: false, dangerous: false, connected: false, lewd: 0 },
{ name: "the nephew", desc: "Local boy, early twenties, walking like the street owes him change. You know the face from the blockpost - the militia captain's nephew, who has never once paid a cover in his life and never once been asked to.", call: "pass", local: true, holding: false, trouble: false, dangerous: false, connected: true, lewd: 0 },
{ name: "the cousin", desc: "A kid in his big brother's chain, holding an ID that is honestly excellent work. But you have carded a thousand faces and this one is seventeen if he is a day, blinking too much, heart hammering visibly through the borrowed shirt.", call: "reject", local: true, holding: false, trouble: false, dangerous: false, connected: false, lewd: 0, wrongPass: "By one a.m. the kid is sick in the VIP bathroom and a bottle-service girl is asking loudly whose genius let a child in. The head of security looks at the tablet, then at you." },
{ name: "the journalist", desc: "Outsider woman, sensible shoes under a party dress that does not match them, a tan line on her neck where a press lanyard usually sits. She keeps photographing the queue and calling it her friends.", call: "reject", local: false, holding: false, trouble: false, dangerous: false, connected: false, lewd: 0, wrongPass: "Two days from now there will be a feature about slumming, with photos taken inside. Management traces the byline back through the door log to your shift." },
{ name: "Big Reggie", desc: "A local legend - built like the blockpost, loved like the corner store. Everyone in the queue greets him. Everyone in the queue also knows every night Reggie drinks ends the exact same way, which is why his knuckles look like that.", call: "reject", local: true, holding: false, trouble: true, dangerous: true, connected: false, lewd: 0, wrongPass: "Reggie behaves for three hours, which is a personal record, and then puts a financier through the DJ table. The comped bottles come out of the door budget." },
{ name: "the whale", desc: "A convoy of black sedans and a man the tablet marks with three stars and a champagne emoji. His entourage includes two bodyguards and someone whose only job appears to be holding his phone.", call: "pass", local: false, holding: false, trouble: false, dangerous: false, connected: true, lewd: 0 },
{ name: "Tasha", desc: "Local girl in a dress that is winning its fight with the weather, banned since the champagne incident nobody will fully explain. She is on the blacklist in bold. She also knows exactly how she looks tonight, and knows you know.", call: "reject", local: true, holding: false, trouble: true, dangerous: false, connected: false, lewd: 2 },
{ name: "the finance twins", desc: "Two outsiders in matching watches, already at the shouting-compliments stage of drunk, holding each other upright in a way that suggests the night peaked in the taxi.", call: "reject", local: false, holding: false, trouble: true, dangerous: false, connected: false, lewd: 0, wrongPass: "They last forty minutes before one of them tries to climb into the DJ booth to request something. Security drags them out past your rope, and everyone watching knows who unhooked it." },
{ name: "the badge", desc: "A man out of uniform the way a knife is out of its sheath - still a knife. Outside-precinct cop, off duty, smiling like doors are a formality that happens to other people. The house has exactly one policy about his kind.", call: "reject", local: false, holding: false, trouble: false, dangerous: false, connected: true, lewd: 0 },
{ name: "the Sunday dress", desc: "A local girl in her one good dress, not on any list, holding the cover charge in exact change like a bus fare. She has been building up the nerve to come here for a month - you can see the whole month on her face.", call: "pass", local: true, holding: false, trouble: false, dangerous: false, connected: false, lewd: 1 },
{ name: "the corner boy", desc: "You know this face from the corner crew, and his jacket pockets are working pockets tonight - square, full, ready for the smoking terrace. He gives you the nod that says we are both professionals here.", call: "reject", local: true, holding: true, trouble: false, dangerous: false, connected: false, lewd: 0, wrongPass: "He works the terrace all night. Club security catches the third handoff, and the question of who let a known dealer through the rope has exactly one answer." },
{ name: "the chemical couple", desc: "An outsider pair already orbiting a distant planet, pupils like dinner plates, jaws working gum that ran out an hour ago. Her clutch rattles like a pharmacy. They are, to be fair, extremely happy.", call: "pass", local: false, holding: true, trouble: true, dangerous: false, connected: false, lewd: 0 },
{ name: "the owner's guest", desc: "A woman with expensive hair and a story: the owner personally invited her, darling, check again. The tablet has no record of her. Her confidence does not blink. Beautiful liars are still liars - probably.", call: "reject", local: false, holding: false, trouble: false, dangerous: false, connected: false, lewd: 2 },
{ name: "the builder", desc: "An old local man in his one good suit, freshly pressed, shoes shined to church standard. He poured the foundation of this building thirty years ago, he tells you, back when it was going to be a community hall. He would like, once, to see the inside.", call: "reject", local: true, holding: false, trouble: false, dangerous: false, connected: false, lewd: 0, wrongRej: "He nods like a man who has been told no by this building before, squares the jacket on his shoulders, and walks home through the queue with his shine catching the neon. Nobody laughs. The block saw whose rope it was.", wrongPass: "He nurses one beer at the end of the bar for two hours, hurting nobody, looking at the ceiling he built. It is the buyout host who complains - something about the atmosphere - and the complaint lands on your shift report." }
]>>
<<set _queue = _pool.shuffle().slice(0, 4)>>
<<set _correct = 0>>
<</nobr>>
<div id="queue"><<doorslot 0>></div>
<</if>>
*//* ARCHIVED: the nightclub is not going into the next release - the door-rope widgets are only called from Door Rope, so both are commented out.
<<widget "doorslot">>
<<set _slot = $args[0]>>
<<set _g = _queue[_slot]>>
<<set _correctCall = _g.call>>
<<switch _rule>>
<<case 2>><<if _g.local>><<set _correctCall = "reject">><<elseif _g.dangerous>><<set _correctCall = "reject">><<else>><<set _correctCall = "pass">><</if>>
<<case 3>><<if _g.holding>><<set _correctCall = "reject">><</if>>
<<case 4>><<if _g.trouble or _g.dangerous>><<set _correctCall = "reject">><<else>><<set _correctCall = "pass">><</if>>
<<case 5>><<if _g.dangerous>><<set _correctCall = "reject">><<else>><<set _correctCall = "pass">><</if>>
<</switch>>
<<set _cSel = "#dgc" + _slot>>
<<set _oSel = "#dgo" + _slot>>
<div class="text"><strong>At the rope (<<= _slot + 1>>/4):</strong> <<= _g.desc>></div>
<div @id="'dgc' + _slot">
<<linkreplace "Unhook the rope">>
<<replace _oSel>>
<<if _correctCall == "pass">>
<<set _correct += 1>>
<p>You unhook the rope and the night absorbs them without a ripple. Right call.</p>
<<else>>
<<if _g.wrongPass>>
<p><<= _g.wrongPass>></p>
<<elseif _g.holding>>
<p>Twenty minutes later there is a handoff on the smoking terrace, and the van across the street has photographs of the door that allowed it. Your door.</p>
<<statchange "heat" 3>>
<<elseif _g.trouble or _g.dangerous>>
<p>It takes until midnight for the mistake to introduce itself - raised voices, broken glass, a table of guests getting comped for their trouble. The head of security looks from the wreckage to the tablet to you.</p>
<<else>>
<p>The tablet pings your call as a miss within the hour. The rules were the rules tonight, and that was not them.</p>
<</if>>
<</if>>
<</replace>>
<<replace _cSel>><</replace>>
<<if _slot < 3>>
<<append "#queue">><<doorslot `_slot + 1`>><</append>>
<<else>>
<<append "#queue">><<doortally>><</append>>
<</if>>
<</linkreplace>>
<br>
<<linkreplace "Turn them away">>
<<replace _oSel>>
<<if _correctCall == "reject">>
<<set _correct += 1>>
<<if _g.wrongRej and _g.name == "the builder">>
<p>"Not tonight," you tell him, and mean the apology in it. He nods like a man who has been told no by this building before, squares the jacket on his shoulders, and walks home through the queue with his shine catching the neon. Right call. It doesn't feel like one.</p>
<<else>>
<p>You keep the rope hooked and watch the problem walk off down the block, somebody else's problem now. Right call.</p>
<</if>>
<<else>>
<<if _g.connected>>
<p>Within the hour a phone call comes down through the manager like weather. Somebody's somebody got bounced at your rope, and somebody's somebody's uncle wants your name spelled correctly. It gets spelled correctly.</p>
<<statchange "heat" 4>>
<<elseif _g.wrongRej>>
<p><<= _g.wrongRej>></p>
<<else>>
<p>They leave without a scene. Later you learn they were exactly who they said they were, and the rules tonight had a place for them inside. The tablet logs the miss.</p>
<</if>>
<</if>>
<</replace>>
<<replace _cSel>><</replace>>
<<if _slot < 3>>
<<append "#queue">><<doorslot `_slot + 1`>><</append>>
<<else>>
<<append "#queue">><<doortally>><</append>>
<</if>>
<</linkreplace>>
<<if _g.lewd > 0>>
<br>
<<linkreplace "Suggest another way in">>
<<replace _oSel>>
<<if _g.lewd == 1>>
<p>You tip your head toward the alcove past the coat check, and she understands the neighborhood's oldest exchange rate faster than you finish the sentence. In the dark she pulls the good dress off her shoulders and shows you her tits, chin up, half defiance and half transaction, nipples hard in the cold air off the door. You look exactly as long as the toll requires, then unhook the rope.</p>
<!-- IMAGE: alcove flash - local girl pulling down her dress top in the dark by the coat check -->
<<else>>
<p>You tip your head toward the gap behind the velvet curtain, and she smiles like she has read this contract before signing it. Behind the curtain she is all business and no illusions - down on her knees on the club's marble with the bass covering everything, working your cock out of your slacks with practiced fingers.</p>
<!-- VIDEO: behind the curtain - quickie blowjob against the wall, club bass muffled -->
<p>Her mouth is warm, fast, and entirely uninterested in ceremony; she sucks you with one eye on the curtain gap and both hands earning her cover charge, and when you grunt she swallows, stands, fixes her lipstick in her phone, and walks past the rope like she owns it.</p>
<</if>>
<<if _correctCall == "pass">>
<<set _correct += 1>>
<p>The tablet, blind to the alcove, logs a correct entry. The queue is less blind: she came out fixing her dress, and every face in line just learned what your rope costs.</p>
<<else>>
<p>The rules said no tonight - and the tablet logs her entry as your miss. Worse, the queue watched her come out fixing her dress. Every face in line just learned what your rope costs.</p>
<</if>>
<<statchange "respect" -2>>
<<statchange "heat" 1>>
<</replace>>
<<replace _cSel>><</replace>>
<<if _slot < 3>>
<<append "#queue">><<doorslot `_slot + 1`>><</append>>
<<else>>
<<append "#queue">><<doortally>><</append>>
<</if>>
<</linkreplace>>
<</if>>
</div>
<div @id="'dgo' + _slot"></div>
<</widget>>
<<widget "doortally">>
<<set _pay = 15 + _correct * 5>>
<p>Four in the morning. The head of security takes the tablet back and reads your shift the way other men read racing forms.</p>
<<statchange "money" _pay>>
<<if _correct == 4>>
<<speech "Head of Security" "Four for four. You've got door eyes. Here - the good calls get the good handshake.">>
<<statchange "money" 10>>
<<statchange "respect" 1>>
<<elseif _correct >= 2>>
<<speech "Head of Security" "Some right, some wrong. That's a door shift. Go home.">>
<<else>>
<<set $door_strikes += 1>>
<<if $door_strikes >= 3>>
<<speech "Head of Security" "Three marks. I told you how the record works. Shirt.">>
<p>You hand back the black t-shirt a size too small, and the staff entrance becomes a wall again. Around here even failure is punctual.</p>
<<set $nightclub_job = 0>>
<<set $door_strikes = 0>>
<div class="req">You've been fired from the club. The old gates apply if you ever want back in.</div>
<<else>>
<<speech "Head of Security" "That was expensive judgment. Mark number $door_strikes goes on your record. Three and you're done here - the rope forgives nothing.">>
<div class="req">(Strikes: $door_strikes/3)</div>
<</if>>
<</if>>
<p>[[Back inside|Nightclub]]<br>[[Step into the night|The Hood]]</p>
<</widget>>
*/<<switch $target1>>
<<case 1>>
<<pic "img/adriana/meeting.jpg">>
<<speech "Adriana" "So you're the guy Jamal is betting everything on... Let me guess, ex-military?">>
<p>You prefer to ignore her questions. Betting everything, though?</p>
<<speech "You" "You know why I am here.">>
<<speech "Adriana" "I love it when men go straight to business. Happy to tell you that your target is ready, hope you have the rest of the payment in cash?">>
<<speech "You" "Hold on for a moment. Can you please tell me what exactly you have done?">>
<<speech "Adriana" "Oh, with pleasure.">>
<p>Adriana walks you through her playbook with the pride of someone showing off a trade she's spent years honing. The bones of it, she explains, are the same con she's run for paying clients since before she could legally drink: infect the target's devices with malware to gain remote access, hollow out their social profiles, work the social engineering until you own as much of their life as it's possible to own from behind a screen. If the target's house has CCTV, it's hacked; otherwise, hidden cameras go in separately. She's wrecked marriages and emptied bank accounts this way for money. The rest, she admits, is new.</p>
<p>The next step is up to you. While you control the target's digital life through various exploits, your aim is to spark an interest in interracial sex and extramarital affairs, usually by displaying interracial porn pop-ups, recommending articles promoting infidelity, and so on.</p>
<<pic "img/adriana/popup.webp">>
<p>Now, the goal is to provide the curious soul with materials to explore. Delivery of forbidden interracial porn through VPN. Anonymous forums, where fake users describe their affairs. One-day deliveries of realistic black dildos. And when the target starts craving the real thing - it's time for you to step in.</p>
<<pic "img/adriana/popup2.webp">>
<<speech "Adriana" "I provide a secure laptop that has all the needed software installed. It's really easy to follow, just log in occasionally and watch the target until she's ready to go black.">>
<<speech "You" "How do I know that she will?">>
<<speech "Adriana" "The profile does. This woman is bored out of her mind, her husband hasn't touched her in months, and I've watched what she reaches for when she thinks nobody's looking. She's most of the way there on her own; I'm just clearing the road.">>
<<speech "You" "And the rest? The... going black part.">>
<<speech "Adriana" "That's Jamal's theory, not mine. He came to me after that whole Renner business, obsessed, saying he'd found the one thing these people can't survive. Wanted to know if I could make it happen on purpose instead of by luck. Turns out I can. You're the first target we're aiming the whole thing at, start to finish.">>
<p>The first target. So you're not stepping onto a conveyor belt - you're the test run for a thing that has worked exactly once, and only by accident. Somehow that's worse. But both Adriana and Jamal are betting everything on Renner's fall repeating, and so, it seems, are you.</p>
<hr>
<p>All that is left is to make the last payment.</p>
<<speech "Adriana" "Jamal already beat me down from two hundred, the cheapskate. So: $100 now. Or - I can give you a $50 discount if you do a little service for me. Beat up a kid who was shitting on my gaming skills.">>
<<speech "You" "Are you serious right now? Beat up like... threaten?">>
<p>With an angelic smile, Adriana corrects you.</p>
<<speech "Adriana" "No-no, I want you to fuck him up properly. Let him bleed. And tell him, write it down, 'unicorn_pussy69 sends her regards'.">>
<<nobr>>
<<set _choiceMade = false>>
<div id="choice-container">
<<if not _choiceMade>>
<<if $money >= 100>>
<<linkreplace "Pay in cash">>
<<set _choiceMade = true>>
<<replace "#output">>
<p>You throw Adriana a wad of cash - impressive looking but made from small denominations.</p>
<<speech "Adriana" "Nice! Let me get you everything.">>
<<statchange "money" -100>>
<<set $target1 to 2>>
[[Proceed|Target1]]
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Pay in cash"</em></div><</replace>>
<</linkreplace>><br>
<<else>><div class="req">You don't have $100.</div><</if>>
<<if $money >= 50 && (($respect >= 80 && $physical < 50) || ($respect >= 40 && $physical >= 50))>>
<<linkreplace "Do muscle service(and take a reputation hit)">>
<<set _choiceMade = true>>
<<replace "#output">>
<p>You wait outside the kid's school and compare leaving teens against the photo Adriana gave you. Finally, you have a match.</p>
<<speech "You" "Hey kid, does the name '14domination_fan88' tell you something?">>
<p>By the frightened pimply face of this skinny white teen, you confirm that he is the one you look for. Before he starts running, you knock him down with a punch to his nose.</p>
<<speech "You" "Unicorn pussy sends her regards... or something.">>
<<pic "img/adriana/beat_up.webp">>
<p>You kick the shit out of him in front of the school, in the eyes of his classmates and friends, until he stops screaming. It's not pretty. You run from the scene but have no doubts you are recognized.</p>
<<if $physical < 50>>
<div class="req">Strength check failed!</div>
<p>You have fallen out of shape, failed to control your strength, and thus caused more damage than needed. Beaten to the pulp, the kid will live, but recovery will take some time. Your reputation plummeted.</p>
<<statchange "respect" -80>>
<<statchange "heat" 20>>
<<else>>
<p>You made sure not to injure the kid, and he recovered quickly. While still damaging to your reputation, this episode can be quickly remediated.</p>
<<statchange "respect" -40>>
<<statchange "heat" 10>>
<</if>>
<<speech "Adriana" "Haha, what a loser! Come to my place, I'll get you everything.">>
<<statchange "money" -50>>
<<set $target1 to 2>>
[[Meet the psycho|Target1]]
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Do muscle service"</em></div><</replace>>
<</linkreplace>><br>
<<else>>
<<if $money < 50>>
<div class="req">You don't have $50 for the discounted price either.</div>
<<elseif $physical >= 50>>
<div class="req">You could put the kid down clean, but the hood would still hear about it. You need 40 respect to carry that. (You have $respect.)</div>
<<else>>
<div class="req">Out of shape, you'd make a mess of him, and that kind of mess follows you. Get to 50 physical to do it clean on 40 respect, or bank 80 respect to survive doing it badly. (You have $physical physical, $respect respect.)</div>
<</if>>
<</if>>
<<linkreplace "Take some time to think">>
<<set _choiceMade = true>>
<<replace "#output">>
<<speech "Adriana" "Sure. Don't make Mrs. Bond wait too long, though!">>
<<return>>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Take some time to think"</em></div><</replace>>
<</linkreplace>>
<</if>>
</div>
<div id="output"></div>
<</nobr>>
<<case 2>>
<p>Adriana hands you a reinforced laptop and explains how to use it. It's fully encrypted and protected from various attacks like cold freeze. Installed are: surprisingly easy-to-use application for controlling the target's devices, coupled with psychological profiles and scenarios; communication link with Adriana and Jamal (finally!); and some other utilities you don't have time to get into now.</p>
<<speech "Adriana" "Now, before you go... I spend so much time looking at black dicks on my screens I guess I got curious myself. How about you practice your blacking skills on your nerdy hacker?">>
[[Why not?|AdrianaQuestBJ]]
<<link "I have a job to do" "The hideout">>
<<set $target1 to 3>>
<<set $hacker_level to Math.max($hacker_level, 1)>>
<</link>>
<<case 3>>
<div class="text">
Taxi drives you to a wealthy neighborhood: massive pools in the backyards, emerald-green lawns, useless marble columns, all this kitsch. You feel alien in here and cross the distance between the road and the entrance gate as fast as you can before neighbors call the police about some suspicious black man in their segregated area. Your heart races as you ring the telecom.</div>
<<speech "Savannah" "Hello, are you from the water company? Please come in. The pool is from the right.">>
<p>With a buzz, the gate opens, and you step on the premises. At least Adriana crafted a believable notification from the local water provider. Still, how are you supposed to do... what you need to do? Even if Mr. Bond did some horrible things, this doesn't automatically make his wife a bad human being.</p>
<<pic "img/savannah/portrait_base.jpg">>
<<speech "Savannah" "Oh! Why would the company send a nigger?">>
<p>Nevermind then. Actually, playing along would make it even easier.</p>
<<speech "You" "I'm sorry, ma'am. Shortages of the workforce, and this was an important matter.">>
<<video "img/savannah/pool.webm" >>
<<speech "Savannah" "All right... well, here's the pool. Do what you need, and be quick about it.">>
<<speech "You" "Sure, ma'am.">>
<p>You come to the pool and take some water samples, trying to look as professional as possible. Mrs. Bond is looking over your shoulder, probably in case you steal some of her water.</p>
<<pic "img/savannah/pool.jpg">>
<p>Just what you needed. Pretending you have to maneuver between her voluptuous body and the pool, you make a clumsy move and fall into the water. Splash!</p>
<<speech "Savannah" "Sir, are you all right?">>
<<speech "You" "I'm fine, ma'am. I'm soaked, though. Can I have a towel, please?">>
[[Proceed|Target1-2]]
<</switch>><p>Five minutes later, you find yourself inside the house. Since the very moment you took off your shirt, Mrs. Bond stared at your body.</p>
<<speech "Savannah" "I must say, I'm terrified by the thought alone that my husband finds out I was in the house alone with a nig... a black man.">>
<<speech "You" "What's the problem with that, ma'am?">>
<<speech "Savannah" "Oh, my husband is a very jealous man as is. But with black men - come on, you know how you are.">>
<<speech "You" "Tell me, ma'am.">>
<<speech "Savannah" "Well... So masculine. So raw and dominant. And... big.">>
<<speech "You" "That's true, ma'am. That's what I am.">>
<p>You can't believe how lame this exchange is, but Savannah blushes and peeks at your boxers while trying to gear down this conversation.</p>
<<speech "Savannah" "Haha, I was just joking...">>
<<speech "You" "I'm not. Anyway, tell me, Mrs. Bond, how come you spend this beautiful day by the pool all alone?">>
<<speech "Savannah" "Oh, please... My husband is a very busy man, I guess...">>
<<speech "You" "If I were at his place, ma'am, I would never keep my stunning wife all alone and bored. I see you haven't had fun in a long time, am I right?">>
<<speech "Savannah" "Very long. I used to have fun with my husband, but... Maybe he wouldn't mind me having fun with someone else?">>
<<speech "You" "You don't have to tell him, Savannah.">>
<<speech "Savannah" "You can keep secrets?">>
<p>You lie. This doesn't matter, though, as Mrs. Bond has already made up her mind.</p>
<<video "img/savannah/reveal.webm" >>
<p>She's almost scared to see your dick. But it's just like she imagined, pleasuring herself while looking at blonde girls fucked by massive dicks like yours...</p>
<<video "img/savannah/worship.webm" >>
<p>It's not the same Mrs. Bond that was rude to you outside. This slut is fully ready to be blacked. You hope the hidden camera in your bag, right across the sofa, catches that transformation; if not, Adriana can access CCTV in this house to get some juicy shots.</p>
<<video "img/savannah/blowjob.webm" >>
<p>When she tries to suck your cock, you don't hesitate to help her go deep and rough. Holding her neck so she won't pull back, you slam your dick deep in her throat, and even her gagging sounds like moans of pleasure.</p>
[[Let's get this slut blacked|Target1-3]]<p>For what feels like a sweet eternity, but probably is just shy of an hour, you were ruthlessly pounding the policeman's wife.</p>
<<video "img/savannah/rough.webm" >>
<p>Was it her deeply suppressed desire, a taboo that nested within her for years, that you and Adriana spent weeks coaxing to the surface? Would she snap at some point anyway, sooner or later, and has her marriage been doomed? There are so many themes for an after-sex cuddle talk, but there won't be one. </p>
<<video "img/savannah/doggy.webm" >>
<div class="text">It's not about Mrs. Bond, anyway. You fuck this gorgeous woman not because you wanted to - although you can't deny the attractiveness of her buxom body. No, you pound her because her husband wronged you and many other people. In fact, an argument can be made that if you think about this man while having sex with Mrs. Bond, your sex is pretty gay.
Enough with this shit. It's time to wrap up.</div>
<<video "img/savannah/creampie.webm" >>
<div class="text">You don't even ask Mrs. Bond where you should cum, or if she is on a pill (you know she's not). You just claim her pussy and breed this snow bunny, filling her insides with your thick cum. She does not object - this is the happiest moment of her life.
<<speech "Savannah" "I should have started cheating on my husband years ago...">>
You move away to make sure your hidden camera gets a shot of Mrs. Bond's ruined, cum-leaking pussy for the future audience of Mr. Bond and his white colleagues. You own this wife.</div>
<<linkreplace "Should you pee on her?">>
<p>To further establish your domination over Mrs. Bond, you command her to kneel. She does that without hesitation, empty-minded, still euphoric from a series of orgasms you gave her during the last hour.</p>
<<video "img/savannah/piss.mp4" >>
<p>You empty your bladder at her. Initially, you just wanted to give this girl a golden shower to humiliate her further, piss all over her big tits and stupid face; but Mrs. Bond eagerly opens her mouth to the stream of yellow liquid and, with loud gulps, drinks everything you gave her, bathing in your piss. Amazing slut.</p>
<</linkreplace>>
<div class="text">There's nothing left to do here. You call a taxi and pick up your things as Mrs. Bond lies on the sofa, still in bliss. Part of you feels sorry for her - her life is going to be changed forever, for better or worse, when your little sex tape is released.
You can't make an omelet without breaking eggs.</div>
[[Later|Target1-4]]<<pic "img/general/hideout.jpg" "location">>
<div class="text">You're back in the hideout before dawn, bolt thrown, sitting in the dark with the street noise coming through the wall.
The first message arrives before you've even washed the night off you - the edit of your sex with Mrs. Bond. Your face is blurred, but you are afraid that someone close might still recognize you on the video. More than that, you are troubled by the whole event in the first place.
<<if $savannah_approach == 2>><<pic "img/savannah/option2/cum.jpg">><<else>><<pic "img/savannah/cum.jpg">><</if>>
Back in the Bond's mansion, you were working on adrenaline - and lust. Now, in cold blood, you are questioning yourself - was going for one's family justified by someone's horrible actions? Sure, Savannah liked - loved - that, but you probably destroyed her life, albeit unhappy.
And also, are you really this masculine, dominating man you see on the screen? You pretended so well that it's hard to see a normal man behind the facade of a black with BBC attached, but it was the point, you guess.
The second message was from Jamal.</div>
<<speech "Jamal" "Nigga, you a natural. Adriana put your work all over the web, but we made sure the first to see it was Mr. Bond and his brothers in blue.">>
<p>You can practically hear the grin through the screen.</p>
<<speech "Jamal" "Police Sergeant Nikolas Bond, suspended without pay - imagine that! Official reason say something about conduct unworthy of an officer, but really they just want this pathetic bastard gone quick, before the shame rubs off on the badge.">>
<<speech "Jamal" "See, if we'd killed Bond, they'd have made him a martyr, and the heat would've been unbearable. Now his own people doing the burying for us.">>
<<speech "Jamal" "Don't mean it come free, though. A sergeant got humiliated, and a precinct always take that out on somebody. Right now every man on that blockpost is looking real hard at big black brothers who got business on the other side of the wall.">>
<<speech "Jamal" "So you sit still, don't leave the hood or even the hideout without much need.">>
<<pic "img/savannah/aftermath.jpg">>
<p>No word about Savannah - not surprising, given that all this operation wasn't about her. You'd love to check the cameras, but Adriana wiped out your digital presence in the mansion - just in case. You hope she's doing fine.</p>
<<pic "img/general/books_1.jpg">>
<p>You can't sleep, and there's nothing in the room to do but the pile of books Jamal must have left here. History of black activism, guerilla warfare, leftist theory, and a lot of psychology - it's a weird mix, and you read until the light comes up grey through the blinds; maybe you should check the library to find out more?</p>
<<statchange "knowledge" 2>>
<<if $ella_stage >=6>>
<<pic "img/ella/dreaming.jpg">>
<div class="text">Speaking of the library, you realize you've thought about Ella all night. In the whirlwind of sex and debauchery, she is an island of relative normalcy, and it looks like you are more attracted to her than you thought. You'd love to meet her when you have the chance.</div>
<</if>>
<div class="text">You lie down as the block wakes up around you. Jamal is right about the neighborhood: it will hide you the same way it hides everything else, as long as you stay inside it.</div>
<div class="req">Your heat is through the roof. Until it cools down, the blockpost is out of the question - the hood is all you've got. Laying low in the hideout burns it off faster.</div>
<<set $heat = 90>>
[[Continue|Sleep]]
<<set $target1 to 4>>
<<if $ella_stage >= 6>><<set $ella_stage to 7>><</if>>
<<set $nextday to 1>><h1>Mrs. Savannah Bond</h1>
<<pic "img/savannah/photo.jpg">><br>
Interest in interracial sex: $savannah_blacked<br>
Interest in affairs: $savannah_cheating<br>
<<if $savannah_observation_made == 0 && ($savannah_blacked >=1 || $savannah_cheating >=1 )>>
[[Check the cameras|t1_observe]]<br>
<</if>>
<<if $savannah_action_made == 0>>
<h2>Actions:</h2>
[[Show lewd pop-ups|t1_popup]]<br>
<<if ($savannah_blacked >=2 || $savannah_cheating >=2 )>>[[Send interracial porn links|t1_porn]]<br><</if>>
<<if $savannah_dildo_sent == 0 && ($savannah_blacked >=4 || $savannah_cheating >=4 )&& $money >= 20>>
[[BBC toy delivery($20)|t1_dildo]]<br>
<</if>>
<<else>>
<br>
Let that sink in. Come back tomorrow...<br>
<br>
<</if>>
<<if $savannah_approach == 0 && ($savannah_blacked >=3 || $savannah_cheating >=3 )>>
<h2>Choose the final approach:</h2>
Adriana has blueprinted several scenarios for your approach based on Mrs. Bond's psychological profile, access to the properties, and basic scenarios. Choose what suits you best.<br>
<h3>Black Lover</h3>
Meet Mrs. Bond solo and seduce her using her desire to cheat on her husband.<br>
<<if $savannah_cheating < 7>><div class="req">Requires 7 in affairs interest (currently $savannah_cheating)</div><br>
<<else>> [[Choose|t1_option1_setup]]
<</if>>
<h3>Snowbunny for two</h3>
Join forces with Jamal and present Mrs. Bond with an opportunity to fulfill her black gangbang fantasies.<br>
<<if $savannah_blacked < 7>><div class="req">Requires 7 in interracial interest (currently $savannah_blacked)</div><br>
<<else>> [[Choose|t1_option2_setup]]
<</if>>
<<elseif $savannah_approach == 0>><div class="req">Keep raising her stats...</div><br>
<</if>>
<br>
[[Go back|Laptop]]<p>On your way to the Bond's mansion, you talk with Jamal.</p>
<<speech "Jamal" "Two of us walking in on her - that's the whole play, young blood. It's what finished Renner, remember? One man in his daughter's bed, maybe he survive that. Two black men on camera? That's the exact thing his whole world is built to keep from happening. More spread, more views, more shame on the husband.">>
<p>He asks with a cheeky smile:</p>
<<speech "Jamal" "So this your first time sharing a girl, or was running trains just regular R&R in the service?" "jamal_happy">>
<<speech "You" "Shut up. No, this will be the first.">>
<p>You were nervous before about the whole operation, but now, when your inexperience comes to light, your anxiety level rises.</p>
<<speech "Jamal" "Ha! Relax, man. We gon' get our cucking material, and I got a feeling we gon' have ourselves a real good time making it. Milf like that? That ain't work, that's a bonus.">>
<p>Jamal pulls something from his pocket and hands it to you. It's a small blue pill.</p>
<<speech "Jamal" "Hey, fucking with another naked man working inches from you can be... distracting, first time especially. Ain't no shame in taking a pill and never once thinking about your boner, you feel me?">>
<p>You look at the erection pill and wonder if you should take it. You believe that great lovers aren't those who are always hard but those who aren't upset by being not. On the other hand, you are about to bring to life a porn reality and are expected to perform just as those idealized, always-hard no matter what actors - who probably used the juice to maintain this myth themselves. Anyway...</p>
<<nobr>><<set _choiceMade = false>>
<div id="choice-container">
<<if not _choiceMade>>
<<linkreplace "Take it">>
<<set _choiceMade = true>>
<<set $savannah_pill = 1>>
<<replace "#output">>
<p>You sigh and swallow the pill. One less thing to worry about.</p><br>
[[You are almost there|Target1_2-2]]<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Take it"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Don't take it">>
<<set _choiceMade = true>>
<<set $savannah_pill = 0>>
<<replace "#output">>
<<speech "You" "Nah man, I think I'm good.">><br>
<<speech "Jamal" "That's what I like to hear, brother.">><br>
[[You are almost there|Target1_2-2]]<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Don't take it"</em></div><</replace>>
<</linkreplace>><br>
<</if>>
</div>
<div id="output"></div>
<</nobr>><p> You finally reach the mansion and ring the bell. The gate opens automatically, and you step inside. Looks like there is someone by the pool, so you head there.</p>
<<speech "Jamal" "One last thing. Don't you hold back in there. Live the stereotype, be her walking interracial kink - that's exactly what we came for.">>
<<pic "img/savannah/option2/meet_1.jpg">>
<<speech "Savannah" "Wait, are you... How... I thought it was a joke...">>
<div class="text"> Savannah meets you by the pool. She looks surprised, but...</div>
<<speech "Jamal" "But you was hoping it ain't, right? Else why the high heels and full makeup on your pool day?" "jamal_happy">>
<p> She blushes and bites her lip.</p>
<<pic "img/savannah/option2/meet_2.jpg">>
<<speech "Savannah" "You said nothing about my skimpy bikini... Okay, you got me. I was dreaming that two strong black men would give me a porn star treatment, but... it was just a fantasy.">>
<<speech "You" "Mrs. Bond, we can leave if you like.">>
<p> Jamal squints at you, but you prefer to ignore him, while Mrs. Bond is visibly torn. It's one thing to reply to scammy emails and then pretend they are real; another is to face your dreams in reality. However, you are confident about her decision - you've seen her life and know her too well.</p>
<<speech "Savannah" "Please, stay. And call me Savannah. Or slut. Or whore. Treat me rough, you fucking nigg...">>
<p> Jamal slaps her face, and you join him in groping her massive tits.</p>
<<video "img/savannah/option2/1_grope.mp4" >>
<p>Savannah's tiny bikini top can barely contain her heavy melons, and you quickly pull it away to free her gorgeous bust. Meanwhile, her impatient hands had already found the parts she was most interested in and now stroke the big black dicks she dreamed of. You play with her tit with one hand while your other explores her crotch, and even through the thin fabric of her thong, you can feel her burning-hot pussy. She will be dripping in no time just from you two groping her boobs.</p>
<<video "img/savannah/option2/2_ass_grope.mp4" >>
<<speech "You" "Show us what else you got!">>
<<speech "Jamal" "Daymn, that's one nice ass for a white girl!">>
<p>You play with Savannah's bubble butt, shaking and slapping her fat asscheeks; her butt is truly marvelous. She, on the other hand, is too busy playing with your big toys, holding your dicks with a firm grip as if afraid you'll change your mind and leave without giving her a taste.</p>
<<video "img/savannah/option2/3_bj.mp4" >>
<p>You and Jamal could play with her voluptuous body all day long, but Savannah has other ideas. She kneels between you two and, for a moment, sizes you up - these must be the biggest cocks she has seen in her life, and what is most important - her husband's pitiful penis of a white man pales in comparison to your monster cocks. Hungrily, Savannah wraps her lips around your shaft and starts sucking you - just to switch and serve her mouth to Jamal. She iterates between you two, thoroughly enjoying herself.</p>
<<video "img/savannah/option2/4_facefuck.mp4" >>
<p>To remind this slut who's in charge, you grab the back of her head and thrust your cock deeper in Savannah's throat, then pass her to Jamal so he can fuck this whore's face as well. She gags and drools all over her fat tits; when you reach it to give a squeeze, it's all slippery. For a moment, you wonder if you are going too rough on the poor housewife - it is then that Savannah grabs your hand and forces you to squeeze her boob harder and play with it like an oversized stress relief ball.</p>
<<speech "Savannah" "*gasps for air* You're so eager to fuck my throat, boys - want to fuck something else instead?">>
<<speech "Jamal" "Bitch, make my day - tell me you got that ass ready for some black meat.">>
<p>Shit, Jamal knows his way with words.</p>
<<speech "Savannah" "Who do you think I am? Of course, you can fuck my big fat ass with your monster cocks! Let's go inside, and I'll show you.">>
<p>What a transformation from a bored housewife to an anal slut! Her husband would be proud.</p>
[[Go inside for the main course|Target1_2-3]]<<video "img/savannah/option2/5_spitroast.webm" >>
<<video "img/savannah/option2/6_dp.webm" >>
<<video "img/savannah/option2/7_reverse_dp.mp4" >>
<p>Inside the living room, right on the couch where Savannah watches TV with her husband, you pound her every hole. Sweet, perfect-looking pussy is a great fit for your hard dicks, while her bubble butt is tight but can barely fit half the length of your massive dicks; and at all times, you can just shove your cocks inside her always-open mouth and hope she won't choke to death. Cameras around the room record every orgasm Savannah has, every inch of black meat entering her holes, every word of pleasure and degradation she screams to you. Indeed, this is a perfect love letter for her sadistic husband.</p>
<<if $savannah_pill == 0>>
<<video "img/savannah/option2/8_anal_hand.webm" >>
<p>At some point, you and Jamal are exhausted, while Savannah is insatiable and keeps asking for more and more. Jamal leaves to get some water while you are left alone; your erection is not that hard, but this does not stop Mrs. Bond from trying to make you harder with both her ass and her hand. Either because of this, or just because of some time alone with her, you get your erection back.</p>
<<else>>
<<video "img/savannah/option2/8_anal_switch.mp4" >>
<p>Fucking such an insatiable slut is more reminiscent of pleasurable but heavy work, and Jamal starts to grow tired first. You, on the other hand, thanks to the pill, are able to hold much longer. At some point, semi-flaccid Jamal pulls out of Savannah's ass and invites you in; he, instead, happily sucks her juicy, sweaty tit while you rail her ass. It's a bit weird, but the pill helps you not care about it too much.</p><</if>>
<<video "img/savannah/option2/10_finish.mp4" >>
<p>Eventually, it's time to wrap up. Out of breath, you jerk off to kneeled Savannah, who looks like she is ready for a second round - but you are no more.</p>
<<speech "You" "We should have brought more men... Call for backup...">>
<<speech "Jamal" "And air support while you at it. Young blood, just cum already - don't make the lady wait on her load.">>
<p>Hidden cameras record how you plaster the slut's face with your thick cream. Using that Savannah is overwhelmed with the smell and taste of your cum, you quickly leave before she comes to her senses. Your job here is done, and it's better to bail before something goes wrong.</p>
<<speech "Jamal" "I seen a lot of sluts in my life, but this one - this something else. You did good today, young blood. Now go rest.">>
[[Next|Target1-4]]Conveniently, your laptop has bookmarked sex shops and courier services operating on the dark web. You select the realistic-looking black dildo and leave the cash in a dead drop near your hideout. As soon as the courier collects the money, delivery is made to Mrs. Bond, leaving no trace to you.
<<statchange "money" -20>>
<<set $savannah_cheating += 1>>
<<set $savannah_blacked += 1>>
<<set $savannah_dildo_sent = 1>>
<<set $savannah_action_made to 1>>
[[Go back|Target1Laptop]]<<nobr>><<set _corruption = $savannah_blacked + $savannah_cheating>>
<<if _corruption >= 8 && $savannah_dildo_sent == 1>> <<set _event = random(1,9)>>
<<elseif _corruption >= 8 && $savannah_dildo_sent == 0>> <<set _event = random(0,7)>>
<<else>> <<set _event = random(0, Math.min(_corruption, 7))>>
<</if>><</nobr>>
<<switch _event>>
<<case 1>>
<<pic "img/savannah/laptop/popup_reaction_1.jpg">>
It seems like Mrs. Bond enjoys what she sees on her monitor.
<<speech "Savannah" "It's so... Indecent~">>
<<case 2>>
<<pic "img/savannah/laptop/popup_reaction_2.jpg">>
Mr. Bond comes to help his wife with the viruses, and you turn them off temporarily. It seems now he suspects his wife was searching for such content herself...
<<speech "Savannah" "Nikkie, I swear I wasn't looking for ~big, black cocks~ on the Internet...">>
<<case 3>>
<<pic "img/savannah/laptop/argue_1.jpg">>
From what you have already seen, Bonds don't look like a happy couple. In rare times when you can find Nikolas at home, there are always fights and arguments between the two, and your supply of lewd materials to Savannah's laptop only adds fuel to the fire.
<<case 4>>
<<video "img/savannah/laptop/nudewalk.webm" >>
Not much today, but you catch Savannah nude on her way to the shower. Damn, you would be lying, saying you don't want to fuck this gorgeous woman!
<<case 5>>
<<pic "img/savannah/laptop/argue_2.jpg">>
Dressed in fancy lingerie, Savannah tries to seduce her husband, and you witness him turning down his wife's request for sex. It looks like it's not the first time...
<<speech "Savannah" "When was the last time we had sex, Nikolas?! Do you even remember you have a wife?">>
Savannah's desire to cheat increased!
<<set $savannah_cheating += 1>>
<<case 6>>
<<video "img/savannah/laptop/mirror_pose.webm" >>
Savannah poses in front of the mirror.
<<speech "Savannah" "Nikolas says I'm too fat... *sigh* But my ass feels kinda nice">>
<<case 7>>
<<video "img/savannah/laptop/masturbation.webm" >>
Sexually frustrated, Savannah takes matters into her own hands, and you watch her masturbate. She runs her fingers across her perfect pussy, stopping on her sensitive clit, and fingers herself until the much-needed orgasm approaches.
<<case 8>>
<<video "img/savannah/laptop/BBCToy_1.webm" >>
You watch Savannah trying out the black dildo you sent her. Spreading her legs, she pushes the BBC toy deep inside her hungry pussy, dreaming of being pounded by a real black thing.
Savannah's desire to try BBC increased!
<<set $savannah_blacked += 1>>
<<case 9>>
<<video "img/savannah/laptop/BBCToy_2.webm" >>
Mrs. Bond put on a whole show while playing with the BBC toy you've sent her. Fucking the black dildo in various positions, she must be ready for a real thing...
Savannah's desire to try BBC increased!
<<set $savannah_blacked += 1>>
<<default>>
Nothing in particular catches your eye as you switch between the hidden cameras in Bonds' mansion, but you can't help but notice how bored Savannah looks most of the time. A devoted housewife, she spends her days mostly alone, with her husband working overtime doing his dirty job, and this loneliness alone is a good precursor for your eventual meeting.
<</switch>><<set $savannah_observation_made to 1>>
[[Go back|Target1Laptop]]You feel that playing on the feelings of the lonely milf would be the easiest option. Mrs. Bond is a vulnerable housewife, craving attention that her husband is not able to provide - and you can use it to your advantage.
The pre-crafted script chooses the next time Mr. Bond will be at work (that's almost always) and sends a notification to the household, telling them about an incoming inspection from the water company. That's your cover.
<<set $savannah_approach to 1>>
<div class="req">You can start anytime from your hideout.</div>
[[Return|Target1Laptop]]<div class="text">This option looks unbelievable to you in its simplicity, entirely banking on Mrs. Bond's pent-up sexual frustration and desire to try interracial sex. You send her an email that simply tells her that she was randomly chosen from visitors to some IR porn site to have sex with the actors. It ends with your and Jamal's physical characteristics and a request to select one or both. It looks like a straight-to-spam, Nigerian-prince-level junk email, so you are genuinely surprised when you receive the reply that says:
"BOTH."
Come to think of it, nothing else is happening in Mrs. Bond's life except for your constant supply of interracial content. She is desperate to reply to even this email for a slim chance of something breaking her out of her housewife routine.
It's a threesome, then.</div>
<<set $savannah_approach to 2>>
<div class="req">You can start anytime from your hideout.</div>
[[Return|Target1Laptop]]<<set _choiceMade = false>> <!-- Flag to track if a choice is made -->
<div id="choice-container">
Choose the pop-up theme for today:<br>
<<if not _choiceMade>>
<<linkreplace "BBC">>
<<set _choiceMade = true>>
<<set $savannah_blacked += 1>>
<<set $savannah_action_made to 1>>
<<replace "#output">><<album "img/savannah/laptop/popups_black/" 6 "webp" "story">>
<p>You tune the malware to throw pop-ups and banners focused on the sexual superiority of black men. IR, BBC, BNWO; breeding, mandingo, race play. You got a lot to learn.<br>Savannah's desire to try BBC increased!</p><</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"BBC"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Infidelity">>
<<set _choiceMade = true>>
<<set $savannah_cheating += 1>> <!-- Change your variable -->
<<set $savannah_action_made to 1>>
<<replace "#output">><<album "img/savannah/laptop/popups_cheating/" 6 "webp" "story">>
<p>The flow of pop-ups is focused on themes such as infidelity, cucking, and cheating.<br>Savannah's desire to cheat increased!</p><</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Infidelity"</em></div><</replace>> <!-- Hides both choices -->
<</linkreplace>><br>
<</if>>
</div>
<div id="output"></div>
<br>
[[Go back|Target1Laptop]]<<set _choiceMade = false>> <!-- Flag to track if a choice is made -->
Choose the porn theme for today:
<div id="choice-container">
<<if not _choiceMade>>
<<linkreplace "BBC">>
<<set _choiceMade = true>>
<<set $savannah_blacked += 1>>
<<set $savannah_action_made to 1>>
<<replace "#output">><<album "img/savannah/laptop/porn_black/" 6 "webp" "story">>
<p>You send the links to forbidden interracial porn, focused on BBC and gangbangs.<br>Savannah's desire to try BBC increased!</p><</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"BBC"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Infidelity">>
<<set _choiceMade = true>>
<<set $savannah_cheating += 1>> <!-- Change your variable -->
<<set $savannah_action_made to 1>>
<<replace "#output">><<album "img/savannah/laptop/porn_cheating/" 6 "webp" "story">>
<p>The porn you send is playing with themes of cucking, cheating, and sharing.<br>Savannah's desire to cheat increased!</p><</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Infidelity"</em></div><</replace>> <!-- Hides both choices -->
<</linkreplace>><br>
<</if>>
</div>
<div id="output"></div>
<br>
[[Go back|Target1Laptop]]<<pic "img/school/school_exterior.webp" "location">>
<p>The bus lets you out across from the school - the other world's kind of school, all brick, lawn, and fresh paint, with the state flag snapping over the entrance. Your fake credentials sit in your pocket, warm as a stolen wallet. Adriana's work is good. It had better be.</p>
<p>Kids of the people who run this country stream through the gates, loud and untouchable. Somewhere in there are the levers Jamal wants pulled.</p>
<<if $school_job == 0>>
<p>The service entrance is around the side, past the dumpsters. That's your door now. The front gates are for people whose parents own things.</p>
[[Report for your first day|School First Day]]<br>
<<else>>
[[Go in through the service entrance|Hallway]]<br>
<</if>>
[[Take the bus back|The Hood]]/* ============================================================
School arc widgets.
<<schoolphase>> - sets _sphase (1-3), the power phase of the
janitor arc. Phase 1: the help, humiliated without recourse.
Phase 2: the fixture, tolerated, allowed to answer back.
Phase 3: the owner, feared.
<<schoolevent>> - 30% chance of a random school event on
entering the Hallway; at most one per day. Lewd events are
watch-only at phase 1; phase 2+ adds an interaction choice.
============================================================ */
<<widget "schoolphase">>
<<if $detention_job && $pollock_stage >= 4>>
<<set _sphase = 3>>
<<elseif $school_rep >= 15 && $amber_stage >= 4>>
<<set _sphase = 2>>
<<else>>
<<set _sphase = 1>>
<</if>>
<</widget>>
<<widget "schoolevent">>
<<schoolphase>>
<<if $last_school_event_day < $day && random(1, 100) <= 30>>
<<set $last_school_event_day = $day>>
<<set _sevent = random(1, 11)>>
<<switch _sevent>>
<<case 1>>
/* Fire drill */
<<if _sphase == 1>>
<p>The fire alarm goes off mid-period and the building empties past you in a river of blazers. You stand against the wall with your cart, the way you're supposed to. A linebacker-sized senior puts his shoulder into you as he passes - not an accident, nothing about the smirk is an accident - and your spray bottles clatter across the floor. Nobody stops. A girl steps over the bottles like they're roadkill.</p>
<p>You pick them up. You keep your eyes down. That's the whole job description, really.</p>
<<elseif _sphase == 2>>
<p>Fire drill. The river of blazers parts around your cart this time. The linebacker who used to shoulder-check you meets your eyes for half a second and decides the other side of the hallway looks better. A small victory.</p>
<<else>>
<p>Fire drill. The hallway empties around you and the linebacker who used to bounce you off the lockers stops - stops - to pick up a rag that slipped off your cart. He sets it back like it might be wired to something. "Sorry, Mr. $player_surame."</p>
<<statchange "respect" 1>>
<</if>>
<<case 2>>
/* Volleyball team mud */
<<if _sphase == 1>>
<p>The girls' volleyball team comes back from the practice field straight across your wet, just-mopped floor - a parade of cleats and long legs leaving a trail of mud the length of the main hall. The captain looks right at you as she does it. "Oops," she says, and her whole squad giggles on cue, and then they watch you: the entertainment portion of their afternoon, a grown man getting back down on his knees with a rag.</p>
<p>You get back down on your knees with a rag.</p>
<<elseif _sphase == 2>>
<p>The volleyball team hits the edge of your wet floor and actually hesitates. The captain weighs the mud on her cleats against something in your face that wasn't there a month ago, and takes her squad the long way around. One of the younger ones mumbles something that might be sorry.</p>
<<else>>
<p>The volleyball girls stop dead at the edge of your wet floor like it's an electric fence. The captain unlaces her cleats and carries them, and the whole squad pads across in socks, and she gives you a smile on the way past that has nothing to do with apology and everything to do with the things the school whispers about the man in the coveralls now.</p>
<</if>>
<<case 3>>
/* Vending machine */
<p>The vending machine outside the gym has eaten some sophomore's money again, and he's rocking the whole cabinet like it owes him gambling debts. It's going to come down on him if he keeps that up.</p>
<div id="choice-container">
<<linkreplace "Fix it for him">>
<<replace "#output">>
<p>Two raps on the side panel, a hip check at the right corner - the machine coughs up his chips and his coins. He looks at you like you've done a card trick. "Thanks, man."</p>
<<set $school_rep += 1>>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Fix it for him"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Not your problem">>
<<replace "#output">>
<p>You push your cart on by.</p>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Not your problem"</em></div><</replace>>
<</linkreplace>>
</div>
<div id="output"></div>
<<case 4>>
/* Pollock's car */
<p>Through the front glass you watch Principal Pollock's silver Tesla glide in and stop at a diagonal across two spaces - hers, and the one marked STAFF MEMBER OF THE MONTH. She gets out without looking at the lines. Rules are for people who can be prosecuted, and she stopped being one of those years ago.</p>
<p>She passes you in the lobby close enough to touch and her eyes never register the obstacle. To Shannon Pollock the mop moves by itself.</p>
<<case 5>>
/* Confiscated phone box */
<p>Someone's left the front office unattended, door open, and on the counter sits the confiscation box - a plastic tub of students' phones, a few teachers' too, waiting out their sentences. Half of them aren't even locked. People in this building believe in locks the way they believe in consequences: for other people.</p>
<div id="choice-container">
<<linkreplace "Go through it">>
<<replace "#output">>
<<if random(1, 100) <= 50>>
<<if $pollock_leverage < 10>>
<p>You wipe the counter slowly with one hand and thumb through an unlocked phone with the other. A teacher's, judging by the emails - and there, in a group chat named STAFF (REAL), a thread about Pollock's "cabinet audit": <i>she does it herself now, won't let the bookkeeper near it since March</i>. You put the phone back exactly where it was. Interesting, what the walls would say if anyone thought the walls could hear.</p>
<<set $pollock_leverage += 1>>
<div class="req">Leverage on Pollock: $pollock_leverage/10</div>
<<else>>
<p>Nothing new - you already know more about this building than the people who run it. You square the box's corners and move on.</p>
<</if>>
<<else>>
<p>You're two phones deep when the office secretary comes back with her coffee. "WHAT do you think you're doing?" You hold up the cleaning rag - the world's oldest alibi - and take the tongue-lashing that follows in front of two students and a parent. The word "these people" features prominently. You count ceiling tiles until it's over.</p>
<<if $school_rep > 1>><<set $school_rep -= 2>><</if>>
<<if $pollock_leverage < 10>>
<p>What she'll never know: the first phone had already talked. A teacher's, unlocked, and in the outbox a grievance email that never got sent - dates, amounts, "the third time our department budget has been 'reallocated' mid-year with no paper trail." You took the tongue-lashing with the sender's name filed away safe.</p>
<<set $pollock_leverage += 1>>
<div class="req">Leverage on Pollock: $pollock_leverage/10</div>
<</if>>
<</if>>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Go through it"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Leave it alone">>
<<replace "#output">>
<p>You wipe the counter and leave the box to its sentence. Patience. The building leaks secrets like a bad roof - you just have to keep being the man with the bucket.</p>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Leave it alone"</em></div><</replace>>
<</linkreplace>>
</div>
<div id="output"></div>
<<case 6>>
/* Pollock at the trophy case - the mirror */
<<if $pollock_stage >= 1>>
<p>Principal Pollock has stopped at the trophy case. Not at the trophies - at the glass. You watch her study her own reflection in it, and behind her reflection, a knot of seniors passing, all shoulders and hair and eighteen years old, laughing at something that has nothing to do with her and everything to do with her. Her thumb comes up and drags once along her jawline, slow, like she's checking a seam for damage. Then she catches herself, snaps her cuffs straight, and marches off at full commanding speed.</p>
<p>You mop on. But you file it.</p>
<<else>>
<p>A quiet stretch of hallway, for once. You get a whole wing mopped without a single blazer walking through the wet end. In this building, that qualifies as a good omen.</p>
<</if>>
<<case 7>>
/* Library flashing */
<p>Dead period, and the library's back stacks have traffic in them after all: a senior girl, phone propped between two hardbacks on the reference shelf, top pulled up over her pierced tits. She squeezes them together, rolls a stiff nipple between two fingers, drags her tongue slow over her lip for the lens. Subscriber content, shot in the periodicals section between third and fourth period. Her dad probably funds this wing.</p>
<<video "img/school/random/flasher_1.webm">>
<<if _sphase == 1>>
<p>Then she clocks you. She doesn't cover up. She checks who it is, registers the coveralls, and goes back to posing, because the janitor doesn't count as being seen. You push your cart past a topless girl between the shelves like you're part of the lighting rig, and she never once breaks the pose.</p>
<<else>>
<p>Then she clocks you - and grins, and holds the pose. "You're not gonna narc," she says. It isn't a question. Around here, you've stopped being furniture.</p>
<div id="choice-container">
<<linkreplace "Lean on the cart and watch">>
<<replace "#output">>
<p>You lean on the cart and watch her work. Having a live audience does something for her - the arch gets deeper, the hands slower, a palm slides down under her waistband and stays there, and she finishes the set facing you instead of the phone, tits swaying with each pose between the stacks. Then the top comes down, the phone goes in the blazer, and she slips off toward fourth period with wet fingers and a straight face, like nothing happened.</p>
<<video "img/school/random/flasher_2.webm">>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Lean on the cart and watch"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Get your cock out">>
<<replace "#output">>
<p>You check the aisle both ways - old habit - and unzip. Her eyes drop, then widen, and the pose falls apart into something honest: she turns her back on her own camera to watch you stroke your BBC, tits out, lip between her teeth, whispering "oh my god" on a loop like a prayer. Her mouth's already hanging open, so you put it to use.</p>
<<video "img/school/random/flasher_sucks.webm">>
<p>While the rich brat gags herself on your black cock, drooling on the library carpet her daddy paid for, you check out the live chat over her bobbing head - it's a blast. Next time you should ask for a cut.</p>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Get your cock out"</em></div><</replace>>
<</linkreplace>>
</div>
<div id="output"></div>
<</if>>
<<case 8>>
/* Empty classroom */
<p>Room 114 is supposed to sit empty fifth period. Through the door glass it isn't: two seniors on the teacher's desk, her back flat against the wood, skirt shoved up around her waist, legs spread wide while he pounds her hard enough to walk the desk across the floor. The papers crumpling under her shoulders are somebody's graded midterms.</p>
<<video "img/school/random/classroom_fuck_1.webm">>
<<if _sphase == 1>>
<p>You gotta move, unless you want to earn a reputation as the school perv.</p>
<<else>>
<p>She spots you through the glass and slows to a grind, watching you watch her. Waiting to see what the man the school whispers about does with a locked-open door.</p>
<div id="choice-container">
<<linkreplace "Stay and watch">>
<<replace "#output">>
<p>She puts on a little show for you - hips grinding slow, tits bouncing out of her open blazer - and when her partner pulls out at the last second and unloads across her face, she keeps her eyes open through every rope of it, locked on you instead of him, like you're the one she's taking the facial for. Her free hand gives you a little wave, the kind you'd give a bus driver, once she's done wiping the cum off her chin with somebody's midterm.</p>
<<video "img/school/random/classroom_fuck_2.webm">>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Stay and watch"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Get your cock out">>
<<replace "#output">>
<p>You swing the door open, step inside, and pull it out. The boy's still buried in her, hips stuttering, mouth open to say something proprietary about the room being taken - and then she looks past him at what you're holding and stops grinding entirely. Her eyes do the math a lot faster than his do. She peels off him without so much as an apology, leaves him hard and stranded on the desk mid-thrust, and drops to her knees in front of you like the janitor just became the main event.</p>
<p>She works you with both hands and her whole mouth, sloppy and enthusiastic, spit running down her knuckles, glancing up now and then to make sure the boy on the desk is watching her not watch him anymore. He sits there rock hard and forgotten, papers stuck to his ass, waiting his turn on a desk he now shares with nobody. She doesn't stop until you're finished, swallows most of it, and wipes her mouth with a satisfied little sound.</p>
<<video "img/school/random/classroom_fuck_3.webm">>
<p>"Janitor's got the master key," she tells him, breathless, by way of explanation. You zip up and go. That sentence will be all over the senior class by sixth period, and it won't hurt you one bit.</p>
<<set $school_rep += 1>>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Get your cock out"</em></div><</replace>>
<</linkreplace>>
</div>
<div id="output"></div>
<</if>>
<<case 9>>
/* Girls' toilets */
<p>The work order says the first-floor girls' toilets are "flooded." They are not flooded. A senior girl is squatting in the middle of the floor, skirt hiked up and panties around one ankle, pissing a long deliberate stream past the toilet - with four open, empty, perfectly functional stalls behind her. She looks up at you mid-stream and doesn't stop, doesn't even pinch it off.</p>
<<speech "Senior Girl" "The stalls are disgusting. Someone should really do their job." "default_female">>
<<video "img/school/random/pisser_1.webm">>
<<if _sphase == 1>>
<p>She finishes at her own pace, stands, steps over her own puddle, and stops at the mirror to fix her hair with her panties still around her ankle - because you watching doesn't count either. On her way out she taps the wet floor sign on your cart.</p>
<<speech "Senior Girl" "You'll want that." "default_female">>
<p>You get the mop. That's the whole job description, really.</p>
<<else>>
<p>She finishes at her own pace and stands there shaking her hips dry, bare pussy on display like a dare, waiting for you to get the mop like the appliance you're dressed as.</p>
<div id="choice-container">
<<linkreplace "Get the mop">>
<<replace "#output">>
<p>You mop it. She watches the whole time from the mirror, redoing her lipstick, and something about a grown man swabbing up her piss without a word seems to settle her whole afternoon. Rich people pay good money for worse therapy.</p>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Get the mop"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Make her clean it herself">>
<<replace "#output">>
<p>She looks at your face, and at the doorway you're occupying all of, and remembers whatever it is the school whispers about the man in the coveralls now, and whatever she was about to say dies somewhere in her throat.</p>
<<speech "You" "Those panties are still on your ankle. Use them.">>
<<speech "Senior Girl" "Yes, sir." "default_female">>
<p>Two words, and they cost her something to say. She bends down and works the panties off her ankle, gets down on her bare knees in her own puddle, and starts dragging the soaked scrap of fabric across the tile in slow circles, wringing it out with her fist between passes while you point out the spots she missed. By the time the floor's dry her hands are shaking.</p>
<<speech "You" "Not done.">>
<p>You nod at what's left pooled in the grout lines. She stares at you for a second like you might be joking, then lowers her head and slurps it off the tile, swallowing her own piss. When the floor's clean she crawls the last few feet to the bowl she was supposed to be scrubbing and, without being told twice, drops her head in and runs her tongue around the rim and under it until the porcelain shines better than it has all year.</p>
<<video "img/school/random/pisser_2.webm">>
<p>You leave her kneeling on the bathroom floor. Word of that will travel too. Good.</p>
<<set $school_rep += 1>>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Make her clean it herself"</em></div><</replace>>
<</linkreplace>>
</div>
<div id="output"></div>
<</if>>
<<case 10>>
/* The counselor's leak */
<p>A knot of senior boys at the lockers, one phone in the middle, and a hush you last heard in church. You catch the screen on your way past: a blonde in a hotel mirror, older than they are and better than they deserve, wearing a conference lanyard and nothing else. Somebody's "leaked set," the file names say MS AMBER, and the arguing is scholarly.</p>
<<speech "Senior" "That's AI, bro." "default_male">>
<<pic "img/school/random/britney_leak.jpg" "story">>
<<if $amber_stage >= 3>>
<p>You keep mopping and keep your face shut, because unlike these archaeologists you have primary sources, and the verdict is: real. Twenty-something, sure - but the smile hasn't changed a day, and you'd know that couch-side grin at any resolution.</p>
<p>By sixth period half the senior class has self-referred to counseling. Britney's door sign says BACK TO BEING AMAZING IN 30 MIN, and when you pass her in the hall she looks about as devastated as a lottery winner.</p>
<<else>>
<p>You mop past. By sixth period the counseling office has a waiting line of self-referred seniors, and the counselor herself walks the hallway looking not like a woman allegedly ruined, but like a woman having an excellent week.</p>
<</if>>
<<case 11>>
/* Settle it */
<p>You're restocking dispensers in the second-floor girls' room - door propped, cart in the doorway, by the book - when two senior girls bang in mid-argument and pull their tops up at the mirrors. It's a bet, apparently. Something about whose are bigger, rounder, firmer...</p>
<<pic "img/school/random/comparison.webp" "story">>
<<if _sphase == 1>>
<p>One of them catches your reflection and elbows the other. "It's the janitor," she says, and they go right back to the audit, tits out, because you rank somewhere below the mirror in this room. You finish the paper towels and wheel out.</p>
<<else>>
<p>One of them catches your reflection - and instead of covering up, turns around. "Perfect. Settle it." Two pairs of tits aimed at you like a pop quiz.</p>
<div id="choice-container">
<<linkreplace "Give an honest verdict">>
<<replace "#output">>
<p>You take your time, because a rushed inspection is a worthless inspection, and they hold still for it - chins up, backs arched, competitive to the bone. You walk a slow circle. You have one of them bounce on her heels, for science. Then you deliver the verdict, flat, itemized, like a work order.</p>
<<pic "img/school/random/bounce.webp" "story">>
<p>The winner shrieks and collects her twenty. The loser calls you blind, then asks - quieter, tugging her top back down - whether the score changes if she works on her posture. You leave them to the rematch negotiations. Strangest thing anyone's asked the help all month, and the month included the grease trap.</p>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Give an honest verdict"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Give a hands-on verdict">>
<<replace "#output">>
<p>Eyeballing it is for amateurs. There's only one metric that actually settles an argument like this - whether a big black cock fits between them - and you tell them so. Neither one laughs. Neither one leaves either.</p>
<p>You unzip and let them look, and the room goes quiet in a way the mirror never managed. One of them steps up without waiting for a vote, cups her tits together under your shaft, and the verdict writes itself the second she squeezes: hers swallow you whole, thick and heavy and warm, more than enough to work you top to bottom with barely a knuckle showing. The other one watches her own chances evaporate in real time.</p>
<<video "img/school/random/titjob.webm">>
<p>You titfuck the winner right there against the sinks, the runner-up crowding in to press her rival's tits tighter around your shaft with both hands, like second place comes with duties. When you finally blow, you paint the winning pair from cleavage to chin, and the loser demands a rematch before you've even zipped up.</p>
<<set $school_rep += 1>>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Give a hands-on verdict"</em></div><</replace>>
<</linkreplace>>
</div>
<div id="output"></div>
<</if>>
<</switch>>
<</if>>
<</widget>>
/* <<schoolclock>> - the shift tracker under a school banner (Hallway,
Cafeteria, Closet): the four $school_time phases in order, the current one
lit and the ones already behind you dimmed. Display only - the phase itself
moves through the Hallway and Cafeteria links and resets in <<newday>>. */
<<widget "schoolclock">>
<<set _clockNow = ["morning", "lunch", "afternoon", "evening"].indexOf($school_time)>>
<div class="school-clock">
<span @class="'clock-step' + (_clockNow == 0 ? ' now' : _clockNow > 0 ? ' past' : '')" @aria-current="_clockNow == 0 ? 'step' : 'false'">Morning</span>
<span class="clock-sep" aria-hidden="true">›</span>
<span @class="'clock-step' + (_clockNow == 1 ? ' now' : _clockNow > 1 ? ' past' : '')" @aria-current="_clockNow == 1 ? 'step' : 'false'">Lunch</span>
<span class="clock-sep" aria-hidden="true">›</span>
<span @class="'clock-step' + (_clockNow == 2 ? ' now' : _clockNow > 2 ? ' past' : '')" @aria-current="_clockNow == 2 ? 'step' : 'false'">Afternoon</span>
<span class="clock-sep" aria-hidden="true">›</span>
<span @class="'clock-step' + (_clockNow == 3 ? ' now' : '')" @aria-current="_clockNow == 3 ? 'step' : 'false'">Evening</span>
</div>
<</widget>><<pic "img/school/service_corridor.jpg" "location">>
<p>The service entrance opens on a different school than the one in the brochure: bare concrete, humming pipes, a punch clock older than you are. A woman from the front office - fifty, floral blouse, lipstick applied at a red light - inspects your forged papers for a long ten seconds, then inspects you for longer.</p>
<<speech "Secretary" "Mr. $player_surame, is it. You will punch in at seven, you will punch out at four, and between those hours the children should not have a reason to know you exist. Uniform is in the closet. So is everything else that concerns you." "default_female">>
<<pic "img/school/closet.webp" "story">>
<p>The uniform is grey coveralls with EJ stitched over the pocket - somebody else's initials, a dead man's or a fired one's, nobody bothered to say. The mop cart has a wheel that pulls left. The closet at the end of the east corridor is yours: mop smell, one flickering tube light, a door that locks from the inside.</p>
<p>On your way to your first work order, the lobby doors swing open and the school's whole weather system changes. Heels on marble. Staff straightening. Principal Shannon Pollock crosses her lobby the way a blade crosses a whetstone, and for one half-second her eyes pass across you - the new janitor, day one - and register nothing at all. Not even contempt, which would at least mean you exist. An appliance has been delivered, that's all.</p>
<<pic "img/school/pe_full.jpg" "story">>
<p>Behind her, a barrel of a man in a tracksuit - the PE coach, by the whistle - catches you watching and gives you a single nod. First one you've gotten inside these walls.</p>
<p>Jamal's voice in your head: <i>build trust, read the room, fuck around and find out.</i></p>
<<set $school_job = 1>>
<<set $closet_unlocked = true>>
<<set $school_pay_day = $day>>
<<set $school_shifts = 0>>
<<set $school_time = "morning">>
[[Get to work|Hallway]]<<if $school_time is "afternoon">>
<<pic "img/school/hallway_afternoon.webp" "location">>
<<elseif $school_time is "lunch">>
<<pic "img/school/hallway_lunch.jpg" "location">>
<<else>>
<<pic "img/school/hallway.webp" "location">>
<</if>>
<<schoolclock>>
<<schoolphase>>
<<if _sphase == 1>>
<p>The hallway between periods is a river of blazers and money, and you are a rock it flows around without seeing. When they do see you it's worse: the sidelong looks, the theatrical wrinkled noses, the freshman who whispers something and gets his laugh. You count it all. You have a good memory for faces.</p>
<<elseif _sphase == 2>>
<p>The hallway has learned your name - or at least the coveralls' name. A few students nod now. Teachers have stopped double-checking their purses when you pass. You're becoming what every good infiltrator becomes: furniture with ears.</p>
<<else>>
<p>The hallway parts for you now. Conversations dip when you pass and pick up again, changed, behind you.</p>
<</if>>
<<schoolevent>>
/* The hub groups its options by where in the building they happen. Every
option keeps its own gate, and <<hubgroup>> leaves out a panel with nothing
in it today. A pending summons from Pollock is the only thing on offer and
holds the shift where it is until you answer it. */
<<set _summons = $pollock_stage == 0 && $school_rep >= 2>>
<<if not _summons && $school_time is "evening">>
<p>The school empties out. The building creaks and settles, honest at last.</p>
<</if>>
<div class="hub-panels">
<<if _summons>>
<<hubgroup "Front office">>
<div class="req">The intercom crackles: "Maintenance to the principal's office. Now, please."</div>
<div class="hub-item beat">[[Answer the summons|Pollock Office]]</div>
<</hubgroup>>
<<else>>
<<hubgroup "Maintenance office">>
<div class="hub-note">Shifts on your timesheet this week: <<= Math.min($school_shifts, 5)>>/5, $5 each. Payday on day <<= $school_pay_day + 7>>.</div>
<<if $school_time is "morning">>
<<if $school_tasks_done >= 2>>
<div class="hub-note">The morning board is cleared. Extra slips go up after lunch.</div>
<<elseif $energy < 2>>
<div class="req">Work orders are stacked on the board, but even the easy ones take 2 energy.</div>
<<else>>
<div class="hub-item">[[Check the task board|School Tasks]]</div>
<</if>>
<<elseif $school_time is "afternoon">>
<<if $school_tasks_done < 3>>
<<if $energy >= 3>>
<div class="hub-item">[[Pick up an extra work order (3 energy)|School Extra]]</div>
<<else>>
<div class="req">Extra slips take 3 energy.</div>
<</if>>
<</if>>
<<if $pollock_stage >= 1 && $pollock_leverage < 8 && $network_day < $day>>
<<if $school_rep >= 5 && $energy >= 2>>
<div class="hub-item">[[Call in a favor below decks (5 school rep, 2 energy)|Below Decks]]</div>
<<elseif $school_rep < 5>>
<div class="req">The building's invisible people see everything Pollock does. They'd talk - for a favor owed. School reputation: $school_rep/5.</div>
<<else>>
<div class="req">The building's invisible people would trade what they've seen of Pollock, but the legwork takes 2 energy.</div>
<</if>>
<</if>>
<<if $incel_path == 1 && $incel_stage >= 9 && $mom_thanks == 0 && $day >= $incel_next_day>>
<div class="hub-note">A woman in a church coat waits by the maintenance office. She has Aaron's face.</div>
<div class="hub-item beat">[[See what she needs|Grateful Mother]]</div>
<</if>>
<</if>>
<</hubgroup>>
<<hubgroup "Front office">>
<<if $school_time is "lunch">>
<<if $pollock_husband >= 1 && $pollock_stage == 2 && $day >= $marcello_next_day>>
<div class="hub-note">Pollock's door is shut for lunch - and Marcello's sad Corolla is in the visitor lot again.</div>
<div class="hub-item">[[Take a quiet look|Pollock After Hours]]</div>
<</if>>
<<elseif $school_time is "afternoon">>
<<if $pollock_stage == 1 && $pollock_leverage >= 3>>
<div class="hub-item beat">[[Knock on the principal's door|Pollock Confrontation]]</div>
<</if>>
<<if $pollock_stage >= 1 && $pollock_stage < 3 && $master_key >= 3 && not visited("Pollock Office Search")>>
<div class="hub-note">Pollock's Tesla left the lot an hour ago. The master key is heavy in your pocket.</div>
<div class="hub-item beat">[[Let yourself into the principal's office|Pollock Office Search]]</div>
<</if>>
<<if $pollock_stage == 2 && $pollock_leverage >= 10 && $master_key >= 3>>
<div class="hub-note">Pollock's door. Her ledger in your pocket, her keys on your ring, her building humming along under your mop. Nothing left to gather.</div>
<div class="hub-item beat">[[Walk into the principal's office|Pollock Reckoning]]</div>
<</if>>
<<if $pollock_stage == 3>>
<<if $pollock_route == 0>>
<<if $day >= $pollock_next_day>>
<div class="hub-note">Pollock's door is unlocked, and it's been left that way for you.</div>
<div class="hub-item beat">[[Walk into Pollock's office|Pollock Unmasked]]</div>
<<else>>
<div class="hub-note">Give Pollock the night. What broke in that office needs time to finish breaking.</div>
<</if>>
<<elseif $pollock_route == 2>>
<<if $day >= $pollock_next_day>>
<div class="hub-note">Pollock's Tesla is out front with the engine running. Walk out of the building whenever you're ready (3 energy).</div>
<<else>>
<div class="hub-note">Pollock picks you up tomorrow, in the middle of the day, with the building full. She wants the night to get ready for it.</div>
<</if>>
<<elseif $day >= $pollock_next_day>>
<<if not $pollock_group_done>>
<<if $energy >= 2>>
<div class="hub-note">Room 214 is ready, and Pollock is waiting in her office.</div>
<div class="hub-item beat">[[Collect Pollock from her office|Pollock Group Project]]</div>
<<else>>
<div class="req">Room 214 is ready for Pollock, but a thing like this you walk into rested or not at all (2 energy).</div>
<</if>>
<<else>>
<div class="hub-note">The boys have their report on Pollock ready - room 021.</div>
<</if>>
<<elseif not $pollock_group_done>>
<div class="hub-note">Pollock is clearing an afternoon for room 214 tomorrow. Nobody rushes this.</div>
<<else>>
<div class="hub-note">The boys will have their report on Pollock tomorrow, in room 021.</div>
<</if>>
<</if>>
<<if $hacker_level == 8 && not setup.princess.ordered("balls")>>
<<if $school_rep >= 3>>
<div class="hub-item beat">[[Ask the front office about the confiscation tub (3 school rep)|Confiscation Tub]]</div>
<<else>>
<div class="req">Something on Adriana's list is sitting in the front office's tub of everything this building confiscates. Digging through it takes a favor from people who trust you. School reputation: $school_rep/3.</div>
<</if>>
<</if>>
<</if>>
<</hubgroup>>
<<hubgroup "Around the school">>
<<if $amber_stage == 0 && $school_rep >= 4>>
<div class="hub-item beat">[[There's a commotion by the trophy case|Amber Intro]]</div>
<</if>>
<<if not $pollock_husband && $pollock_stage >= 1 && $pollock_stage < 4>>
<div class="hub-item beat">[[Something's going on outside the civics room|Marcello Intro]]</div>
<</if>>
<<if $school_time is "lunch">>
<div class="hub-note">The cafeteria is serving. Even the help gets to eat.</div>
<div class="hub-item">[[Take your lunch to the cafeteria|Cafeteria]]</div>
<<elseif $school_time is "afternoon">>
<<if $day > $gym_wing_day>>
<div class="hub-item">[[Swing by the gym wing|Gym Wing]]</div>
<<else>>
<div class="hub-note">You've already done your round through the gym wing today. Coach Gunn locks up at six.</div>
<</if>>
<<if $amber_stage >= 1>>
<div class="hub-item">[[Stop at the counselor's office|Counselors Office]]</div>
<</if>>
<<if $william_stage == 4 && $day >= $william_next_day>>
<div class="hub-note">William's silver Range Rover is in the visitor lot.</div>
<div class="hub-item beat">[[Go find William|William Follow Up]]</div>
<</if>>
<<if $database_access >= 2 && $madi_stage == 0>>
<div class="hub-item beat">[[Take a glimpse at Madi Collins|Madi Intro]]</div>
<</if>>
<</if>>
<</hubgroup>>
<<hubgroup "Basement">>
<<if $school_time is "afternoon">>
<<if $detention_job>>
<div class="hub-item">[[Detention (room 019)|Detention Room]]</div>
<</if>>
<<if $incel_club>>
<<if $incel_stage == 2>>
<div class="hub-item beat">[[Try your key to room 021|Incel Club]]</div>
<<else>>
<div class="hub-item">[[Club at room 021|Incel Club]]</div>
<</if>>
<</if>>
<<if $database_access == 1>>
<<if $energy >= 1>>
<div class="hub-note">Pollock's security key is zip-tied to her keycard in your pocket, and you don't know what you're holding. One kid in this building lives inside its systems for fun (1 energy).</div>
<div class="hub-item beat">[[Ask Terrence to help you access the database|Database Query]]</div>
<<else>>
<div class="req">Pollock's security key is in your pocket and you don't know what you're holding. Terrence would - when you've got the energy left to ask (1 energy).</div>
<</if>>
<</if>>
<<if $server_stage == 1>>
<div class="hub-note">Adriana's black box with the two antennas is riding against your ribs, and it needs hands better than yours.</div>
<div class="hub-item beat">[[Put the server room to Terrence|Server Room Job]]</div>
<</if>>
<</if>>
<</hubgroup>>
<<hubgroup "Elsewhere">>
<<if $school_time is "afternoon">>
<<if $database_access == 2>>
<div class="hub-note">You have the name Pollock's key pulled up. Jamal gets it before anybody else does - the hideout laptop.</div>
<<elseif $database_access == 3 && $server_stage == 0>>
<div class="hub-note">Pollock's keycard and security key go across the wall by hand, to Adriana's lair.</div>
<</if>>
<</if>>
<</hubgroup>>
<</if>>
</div>
<div class="hub-footer">
<<if not _summons>>
<<if $school_time is "morning">>
<<link "Break for lunch">><<set $school_time = "lunch">><<goto "Hallway">><</link>>
<<elseif $school_time is "afternoon">>
<<link "Clock out for the day">><<set $school_time = "evening">><<goto "Hallway">><</link>>
<</if>>
<</if>>
<<if $closet_unlocked is true>>
[[Your closet|Closet]]
<</if>>
[[Exit School|Outside]]
</div><<pic "img/school/board.jpg" "location">>
<<if $school_time isnot "morning">>
<p>The board's morning orders are done with. Whatever breaks now waits for tomorrow or gets an "extra" slip in the afternoon.</p>
[[Back to the hallway|Hallway]]
<<elseif $school_tasks_done >= 2>>
<p>You've cleared what the board had for you this morning. Your back knows it, too.</p>
[[Back to the hallway|Hallway]]
<<else>>
<<schoolphase>>
<p>The cork board in the maintenance office holds the morning's work orders, sorted the way this school sorts everything: what's safe, what's watched, and what nobody else will touch.</p>
/* The morning's board is rolled once and remembered ($school_tasks_day), so
walking back to the hallway and returning can't be used to reroll which
jobs came up. Same contract as "Look for work" and $jobs_day in the hood. */
<<if $school_tasks_day != $day>>
<<set $school_tasks_day = $day>>
<<set $school_task_safe = random(1, 5)>>
<<set $school_task_risky = random(1, 5)>>
<<set $school_task_dirty = random(1, 5)>>
<</if>>
<<set _safe = $school_task_safe>>
<<set _risky = $school_task_risky>>
<<set _dirty = $school_task_dirty>>
<<switch _safe>>
<<case 1>><<set _safeLabel = "Mop the main hall (2 energy)">>
<<case 2>><<set _safeLabel = "Empty the classroom bins (2 energy)">>
<<case 3>><<set _safeLabel = "Wipe down the cafeteria before lunch (2 energy)">>
<<case 4>><<set _safeLabel = "Restock paper and soap, all floors (2 energy)">>
<<case 5>><<set _safeLabel = "Scrape gum off the auditorium seats (2 energy)">>
<</switch>>
<<switch _risky>>
<<case 1>><<set _riskyLabel = "Clean the locker rooms during class (3 energy)">>
<<case 2>><<set _riskyLabel = "Service the teachers' lounge (3 energy)">>
<<case 3>><<set _riskyLabel = "Buff the admin corridor floors (3 energy)">>
<<case 4>><<set _riskyLabel = "Replace the dead lights in the girls' locker room wing (3 energy)">>
<<case 5>><<set _riskyLabel = "Set up the hall for the board meeting (3 energy)">>
<</switch>>
<<switch _dirty>>
<<case 1>><<set _dirtyLabel = "Biohazard, boys' toilets, second floor (4 energy)">>
<<case 2>><<set _dirtyLabel = "Someone redecorated the bus bay with their breakfast (4 energy)">>
<<case 3>><<set _dirtyLabel = "The kitchen grease trap (4 energy)">>
<<case 4>><<set _dirtyLabel = "Dead rat in the science wing ceiling (4 energy)">>
<<case 5>><<set _dirtyLabel = "Snake out the girls' shower drain (4 energy)">>
<</switch>>
<div id="choice-container">
<<if $energy >= 2>>
<span class="task-tier tier-safe">safe</span> <<linkreplace _safeLabel>>
<<replace "#output">>
<<switch _safe>>
<<case 1>><p>You walk the mop up and down the main hall in long even strokes.</p>
<<case 2>><p>Room by room, bin by bin. You learn a school from its garbage: energy drink cans in the AP corridor, cigarettes in the art wing.</p>
<<case 3>><p>You wipe down two hundred feet of cafeteria table before the horde arrives. The kitchen ladies work around you without a word, but one of them leaves a coffee at the end of your row. The staff below decks look after their own.</p>
<<case 4>><p>Cart, cases, every dispenser in the building. Nobody thanks the man who keeps the toilets stocked. Everybody notices the week he doesn't.</p>
<<case 5>><p>Two hours under the auditorium seats with a scraper. There are forty years of gum down there, in layers, like sediment.</p>
<</switch>>
<<statchange "energy" -2>>
<<set $school_rep += 1>>
<<if random(1, 100) <= 20>>
<p>A teacher you don't know yet actually says "thank you" on her way past.</p>
<<set $school_rep += 1>>
<</if>>
<div class="req">School reputation: $school_rep</div>
<</replace>>
<<set $school_tasks_done += 1>><<schoolshift>>
<<replace "#choice-container">><div class="choice-made"><em>"_safeLabel"</em></div><</replace>>
<</linkreplace>><br>
<</if>>
<<if $energy >= 3>>
<span class="task-tier tier-risky">risky</span> <<linkreplace _riskyLabel>>
<<replace "#output">>
<<switch _risky>>
<<case 1>><p>The locker rooms during class hours: steam, echo, and other people's property in unlocked lockers.</p>
<<case 2>><p>The teachers' lounge. You clean it while the staff talk over your head - about students, about parents, about each other - with the perfect freedom of people who believe the man with the rag comes without a memory.</p>
<<case 3>><p>The admin corridor, floor buffer droning, right past the principal's office, the records room, the trophy wall of framed politicians shaking Pollock's hand. Enemy territory, freshly waxed.</p>
<<case 4>><p>The girls' locker room wing, ladder and ballasts, with a front-office chaperone posted in the doorway the entire time to make sure the janitor doesn't enjoy the wallpaper.</p>
<<case 5>><p>Two hundred chairs under the stage lights, name cards in an order somebody upstairs fought a small war over. You're invisible to the suits filing in, which is the point of you, and the whole reason this counts as sensitive work.</p>
<</switch>>
<<statchange "energy" -3>>
<<set $school_rep += 2>>
/* Leverage pity: every dry risky/extra order widens the next leverage band
by 15, so a bad streak can't run forever. Resets the moment dirt drops. */
<<set _lchance = 25 + $leverage_dry * 15>>
<<set _lgot = false>>
<<set _roll = random(1, 100)>>
<<if _roll <= _lchance>>
<<if $pollock_leverage < 10>>
<<set $pollock_leverage += 1>>
<<set $leverage_dry = 0>>
<<set _lgot = true>>
<<switch random(1, 3)>>
<<case 1>><p>Through the lounge wall you catch Pollock's phone voice, pitched low: "...then the count is whatever I say the count is, same as last cycle. Don't call me at work."</p>
<<case 2>><p>In the shredder bag, between coffee grounds, a strip of ledger paper that didn't shred clean: two columns of numbers for the same line item, one for the auditors, one true. You fold it into your coveralls with the reverence it deserves.</p>
<<case 3>><p>Two teachers by the copier, sotto voce: "...election week she has the custodians move boxes to her car herself. Won't let anyone touch them." They notice you and switch to discussing weather. Too late, ladies.</p>
<</switch>>
<div class="req">Leverage on Pollock: $pollock_leverage/10</div>
<<else>>
<p>Nothing new today - the building has already told you most of its secrets. But it never hurts to let it repeat itself.</p>
<</if>>
<<elseif _roll <= _lchance + 15>>
<<if $master_key < 3>>
<<set $master_key += 1>>
<<switch $master_key>>
<<case 1>><p>Behind a dead radiator you find a keyring furred with dust - the last janitor's, or the one before. Half the cuts are obsolete. Two aren't. It's a start.</p>
<<case 2>><p>The locksmith's van comes to rekey a storage room and the man leaves his work case open by your bucket for eleven minutes. You have a good memory, a bar of soap, and eleven minutes.</p>
<<case 3>><p>In the metal shop after hours, a file, a blank, and patience. The key turns the test lock like it grew up in it. As of tonight, "authorized personnel" means you.</p>
<</switch>>
<div class="req">Master key progress: $master_key/3</div>
<<else>>
<p>A quiet, uneventful shift in territory that would be trouble if it knew what you carry in your pocket.</p>
<<set $school_rep += 1>>
<</if>>
<<elseif _roll <= 70>>
<p>Nothing today but the work itself. You finish, you sign the order, you push the cart back.</p>
<<else>>
<<if _sphase == 1>>
<p>Mrs. Albright finds you there - the English teacher with the pearls and the voice like a paper cut. "And what exactly are we doing HERE?" The interrogation is loud, public, and rhetorical: your work order means nothing, your explanation means nothing, the whole point is the performance, and students are gathering to watch it. "These doors are to stay LOCKED to staff of your... category. Is that going to be a problem?"</p>
<p>There is no answer that helps you. You say no ma'am. You look at the floor you just cleaned. She inspects you for one more long moment, hoping for something reportable, and click-clacks away.</p>
<<if $school_rep > 0>><<set $school_rep -= 1>><</if>>
<<set $albright_heat += 1>>
<<else>>
<p>Mrs. Albright rounds the corner, draws breath for the performance - and reconsiders. You're not the anonymous pair of coveralls you were in September, and she's not sure anymore who's watching whom. "Carry on," she manages, like it was her idea.</p>
<</if>>
<</if>>
<<if not _lgot && $pollock_leverage < 10>><<set $leverage_dry += 1>><</if>>
<div class="req">School reputation: $school_rep</div>
<</replace>>
<<set $school_tasks_done += 1>><<schoolshift>>
<<replace "#choice-container">><div class="choice-made"><em>"_riskyLabel"</em></div><</replace>>
<</linkreplace>><br>
<</if>>
<<if $energy >= 4>>
<span class="task-tier tier-dirty">dirty</span> <<linkreplace _dirtyLabel>>
<<replace "#output">>
<<switch _dirty>>
<<case 1>><p>Somebody has done something in the second-floor boys' toilets that a functioning household would call a cry for help. You do it on your knees with a scraper, breathing through your mouth, while boys drift in and out narrating the scene to their phones. "Yo, film the janitor."</p>
<<case 2>><p>Some trust-fund stomach lost its breakfast the length of the bus bay, and the smell has had two hours to establish itself. You hose, you scrape, you disinfect, while the drop-off line of German SUVs idles past your bent back.</p>
<<case 3>><p>The kitchen grease trap. There is no dignified sentence in any language that contains the words "grease trap." You haul out fifty pounds of cold rancid sludge one bucket at a time, and when it slops onto your boots the dish crew winces in genuine sympathy, because they, at least, know exactly what this work is worth and exactly who was ever going to do it.</p>
<<case 4>><p>You find it by smell, third ceiling tile you pull. It has been up there a while. The biology teacher watches you bag it from across the room and empties half a can of air freshener at the ceiling before you're out the door.</p>
<<case 5>><p>A decade of hair comes out of that drain in one long grey rope, plus two snapped elastics and somebody's earring. The swim team crowds the doorway to watch and makes sounds a horror movie would be proud of.</p>
<</switch>>
<<statchange "energy" -4>>
<<statchange "physical" -2>>
<<set $school_rep += 3>>
<p>Word of jobs like this travels below decks. The kitchen crew, the groundskeeper, the security guard on nights - the school's invisible people are deciding you're one of them, and their doors open first.</p>
<div class="req">School reputation: $school_rep</div>
<</replace>>
<<set $school_tasks_done += 1>><<schoolshift>>
<<replace "#choice-container">><div class="choice-made"><em>"_dirtyLabel"</em></div><</replace>>
<</linkreplace>>
<</if>>
</div>
<<linkreplace "Legend">>
<div class="task-legend">
<span class="task-tier tier-safe">safe</span> Quiet work in public. Builds reputation, teaches you nothing.<br>
<span class="task-tier tier-risky">risky</span> Admin territory, staff spaces, places the help isn't supposed to linger. Reputation - and it's where dirt on Pollock and master-key pieces turn up.<br>
<span class="task-tier tier-dirty">dirty</span> The jobs nobody else will take. The most reputation, and the invisible people remember - but nobody drops secrets over a grease trap.
</div><</linkreplace>>
<div id="output"></div>
<p></p>
[[Hallway]]
<</if>><<pic "img/school/hallway_afternoon.webp" "location">>
<<if $school_time isnot "afternoon">>
<p>Extra slips only get posted after lunch.</p>
[[Back to the hallway|Hallway]]
<<elseif $school_tasks_done >= 3 || $energy < 3>>
<p>You've given this building everything your back had today.</p>
[[Back to the hallway|Hallway]]
<<else>>
<p>There's always some extra work to be done - and the afternoon slips skew toward the watched kind: annexes, records rooms, doors with sign-out sheets. Which is exactly why you keep taking them.</p>
<<statchange "energy" -3>>
<<set $school_rep += 2>>
<<set $school_tasks_done += 1>><<schoolshift>>
<<set _roll = random(1, 100)>>
<<if _roll <= 15 + $leverage_dry * 15 && $pollock_leverage < 10>>
<<set $pollock_leverage += 1>>
<<set $leverage_dry = 0>>
<p>Work takes you to shift boxes in the records annex, and the box that splits open on the dolly bleeds precinct tally sheets - years old, never surrendered, annotated in a neat administrative hand. You reseal it badly on purpose and remember the shelf.</p>
<div class="req">Leverage on Pollock: $pollock_leverage/10</div>
<<elseif _roll <= 30>>
<<if $pollock_leverage < 10>><<set $leverage_dry += 1>><</if>>
<p>The extra turns out to be hauling staging for the theater kids, who treat you like a stagehand instead of a stain - which is, by this school's standards, a promotion. One of them fist-bumps you. Their director pretends not to see.</p>
<<set $school_rep += 1>>
<<else>>
<<if $pollock_leverage < 10>><<set $leverage_dry += 1>><</if>>
<p>An hour of honest, invisible work. The building takes it without a word, the way it takes everything from you. For now.</p>
<</if>>
<div class="req">School reputation: $school_rep</div>
[[Back to the hallway|Hallway]]
<</if>><<if $school_time isnot "afternoon" || $network_day >= $day || $school_rep < 5 || $energy < 2 || $pollock_leverage >= 8>>
<p>Not the right time for this.</p>
[[Back to the hallway|Hallway]]
<<else>>
<p>Time to make your rep work.</p>
<<set $network_day = $day>>
<<statchange "energy" -2>>
<<set $school_rep -= 5>>
<<set $pollock_leverage += 1>>
<<switch random(1, 4)>>
<<case 1>>
<p>The night guard owes some favours. You find him at the loading dock and don't even have to finish the question. "Her Majesty? Camera by the records annex died in March. Work order's been sitting on her desk since - she signs everything else same day." He taps ash off his cigarette. "Now why would a woman leave herself a blind spot, you figure?" He tells you which nights her Tesla stays late. All of them are Thursdays. Records pickup is Fridays.</p>
<<case 2>>
<p>The kitchen ladies talk to you now, and today the head cook waves you into the walk-in where conversations go to be private. The catering invoices for the board dinners, she says, come back signed for forty covers when the kitchen plated twenty. "Been that way three years. I keep my copies." She looks at you a long moment over a rack of tomorrow's lunch. "You didn't hear it from me. But if somebody was ever going to, I figured it'd be the man who did the grease trap twice without being made to."</p>
<<case 3>>
<p>The groundskeeper is a man of few words and you've hauled brush for him without being asked, which in his ledger makes you close to family. He walks you to the corner of the east lot, taps a spot of ground with his boot. "Dumpster used to sit here. Election week, two years back, she had me move it by the incinerator and burn a load personal. Boxes. Paper." He shrugs.</p>
<<case 4>>
<p>The front-desk day man runs the sign-in book, and the sign-in book is the one document in this school nobody upstairs thinks about. He slides it across while he "takes his break," open to election week two years back: three after-hours entries, Pollock plus a visitor logged only as "district," no badge number. District people carry badge numbers the way priests carry collars."</p>
<</switch>>
<div class="req">Leverage on Pollock: $pollock_leverage/10. The favor's spent - school reputation: $school_rep.</div>
<<if $pollock_leverage >= 8>>
<p>The invisible people have given you everything they hold. What's left on Shannon Pollock can't be bought over a thermos - it has to be taken from her office, or read off her husband's knees.</p>
<</if>>
[[Back to the hallway|Hallway]]
<</if>><<pic "img/school/cafeteria.webp" "location">>
<<schoolclock>>
<p>The cafeteria seats the whole social order in miniature: the athletes' table, the politicians' kids holding court, the girls who rank each other by handbag.</p>
<p>You eat standing up in the service alcove, where the kitchen crew eats. Best intelligence post in the building - every table's theater plays out in front of you, and nobody performs for the man they can't see.</p>
<<if $cafeteria_event_day < $day && random(1, 100) <= 40>>
<<set $cafeteria_event_day = $day>>
<<schoolphase>>
<<switch random(1, 4)>>
<<case 1>>
<hr class="section-break">
<<if _sphase == 1>>
<p>Today's theater: the volleyball captain's tray tips off the rail and detonates on the tile, and the whole room does the cruelty-applause thing rich kids do. You're there with the mop before the echo dies - fast, silent, gone - and she looks at you for half a second like she's never actually seen a person do a job before, which is the kind of small credit this building pays out eventually.</p>
<<else>>
<p>Today's theater: a freshman gets his backpack emptied over the floor by two juniors who've never once been told no. You don't say anything. You just stop pushing the cart, and stand there, and look - and the juniors discover urgent business elsewhere. The freshman scrapes his books together and gives you the nod. The room saw all of it, and this room keeps books on everything.</p>
<</if>>
<<statchange "school_rep" 1>>
<<case 2>>
<<if $pollock_leverage < 10 && $pollock_stage < 3>>
<hr class="section-break">
<p>A donor father in a coat worth your yearly pay eats with his daughter once a month, performatively, near the alcove where the reception is best. Today he's on the phone through the whole meal, and the alcove hears every word: catering invoices, a "reallocation," and twice - with a laugh - the principal's first name and the phrase "she'll paper it however." The daughter eats in silence. You wipe the same spot of counter for nine minutes.</p>
<<set $pollock_leverage += 1>>
<div class="req">Leverage on Pollock: $pollock_leverage/10</div>
<<else>>
<hr class="section-break">
<p>The head cook runs the lunch line like a border crossing today, and the alcove eats first for once, which around here counts as a victory worth noting.</p>
<</if>>
<<case 3>>
<hr class="section-break">
<<if _sphase == 1>>
<p>Two seniors are conducting a slow-motion scandal at the far table - his hand under it, her face composed above it, the entire performance staged for the one table that's pretending not to watch. Nobody clocks the janitor watching the watchers. The girl's composure slips exactly once, and it's the most honest thing that happens in this building all day.</p>
<<else>>
<p>Two seniors are conducting a slow-motion scandal at the far table, his hand under it, her face composed above it - until she catches you watching from the alcove. And doesn't look away. Her composure holds; her eyes hold longer, over her boyfriend's oblivious shoulder, and when the bell goes she walks her tray past you close enough to make it a statement. The rumor about the janitor has clearly made the rounds - and the rounds, it seems, took notes.</p>
<</if>>
<<case 4>>
<hr class="section-break">
<p>Meatloaf day. The line stretches, the athletes mourn audibly, and the politicians' kids send a freshman to negotiate with the kitchen like a supplicant state. The kitchen's answer does not change: it is meatloaf day. Some institutions are incorruptible.</p>
<</switch>>
<</if>>
<<if $incel_stage >= 1>>
<br>
<<linkreplace "Watch the black boys at their table">>
<<if $incel_stage <= 2>>
<p>They are at the far end of the room, four boys at a table nobody seems to have assigned them and nobody else tries to use. The empty seats around them did not happen by accident. Kids heading for the trash cans take the long way round. A few glance over, then catch themselves doing it.</p>
<p>Aaron talks constantly, filling the space before anybody else can. Terrence eats with one hand and scrolls with the other. Isaiah keeps an eye on the doors. Devin has an expensive watch on his wrist and the bored expression of somebody trying to make it count for more than it does. They have each other, but the rest of the cafeteria has decided their table is a place you do not end up by mistake.</p>
<<elseif $incel_path == 1 && $incel_stage >= 9>>
<p>The boys still eat together, but their table no longer feels cut off from the room. A girl from debate stops to ask Terrence about her laptop. One of Isaiah's teammates bumps fists with him on the way back to the athletes' table. Aaron is telling a story, and people at two nearby tables are listening because it is funny, not because he has backed them into paying attention.</p>
<p>There are people saying hi as they pass, people stopping for a minute, people borrowing a chair. So it wasn't about racism after all, huh?</p>
<<elseif $incel_path == 2 && $incel_stage >= 8>>
<p>The gap around their table is bigger now. Isaiah's chair is gone, and the three who remain seem to have made peace with being on their own side of the room. They sit back, laugh when they want to, and look around without that old need to prove they belong. Other boys keep clear of them. The girls do not, exactly. A few look their way while walking past, then look again when they think nobody noticed.</p>
<p>Devin catches one of those second looks and lets a small smile show. Aaron is already talking to the girl by the water cooler like the answer was never in doubt. They are no closer to the rest of the cafeteria, but they no longer look shut out of it either.</p>
<<else>>
<p>They are still apart from everybody else, but the edges are less clean than they used to be. Aaron lends someone a charger without making a whole thing of it. Devin has stopped checking his watch every thirty seconds. <<if not $incel_dropout>>Isaiah answers a teammate instead of pretending not to hear him. <</if>>Terrence looks up when somebody at the next table laughs, like he has remembered there are people outside the screen.</p>
<<if $incel_dropout>><p>Isaiah is gone from the table now, and from room 021. The chair he used to take has stopped looking temporary.</p><</if>>
<p>It is not enough to call a change, not yet. But the distance around them does not feel as fixed as it did.</p>
<</if>>
<</linkreplace>><br>
<</if>>
<<if $eat_today == 0>>
<div id="lunch-choice">
<<link "Buy a real tray instead of scraps ($3)">>
<<if $money >= 3>>
<<set $eat_today to 1>>
<<replace "#lunch-choice">><div class="choice-made"><em>"Buy a real tray instead of scraps"</em></div><</replace>>
<<replace "#lunch-output">>
<<statchange "energy" 2>>
<<statchange "money" -3>>
<p>You skip the service alcove scraps and buy an actual tray off the lunch line - hot, plated, gone in five minutes standing up. It's not much, but it's the first meal all day that wasn't an afterthought.</p>
<</replace>>
<<else>>
<<replace "#lunch-output">><p>You don't have three dollars to spare on lunch. The alcove scraps will do.</p><</replace>>
<</if>>
<</link>><br>
<<if $school_rep >= 5>>
<<link "Ask the head cook for the staff plate ($5)">>
<<if $money >= 5>>
<<set $eat_today to 1>>
<<replace "#lunch-choice">><div class="choice-made"><em>"Ask the head cook for the staff plate"</em></div><</replace>>
<<replace "#lunch-output">>
<<statchange "energy" 3>>
<<statchange "money" -5>>
<p>The head cook doesn't advertise the staff plate - you have to be somebody below decks to know it exists. Five dollars gets you what the kitchen actually cooks for itself: seasoned, generous, served in the alcove with a nod that means the invisible people feed their own, and the lunch line upstairs will never know what it's missing.</p>
<</replace>>
<<else>>
<<replace "#lunch-output">><p>The staff plate costs five, and you don't have it today. The head cook pretends not to have heard you ask.</p><</replace>>
<</if>>
<</link>><br>
<</if>>
</div>
<div id="lunch-output"></div>
<</if>>
<<link "Finish up and get back to work">><<set $school_time = "afternoon">><<goto "Hallway">><</link>><<pic "img/school/closet.webp" "location">>
<<schoolclock>>
<div class="text">Your closet. Mop smell, one flickering tube light, and the only door in the building that locks with you on the right side of it. The shelf behind the paint cans holds your real life: burner phone, notes, and everything the building has told you so far.</div>
<<if $closet_bed && $school_time isnot "evening">>
<div class="hub-note">The couch in the back is for after you clock out.</div>
<</if>>
<<schoolphase>>
<div class="closet-board">
<div class="board-title">The board behind the paint cans</div>
<div class="board-entry">
<div class="board-row"><span class="board-label">Standing</span><span class="board-value"><<if _sphase == 1>>the help<<elseif _sphase == 2>>the fixture<<else>>the owner<</if>></span></div>
<div class="board-desc">
<<if _sphase == 1>>
You are a pair of coveralls with a mop attached. Anybody with a lanyard can talk to you any way they like, and there is nothing at the end of it but the floor.
<<elseif _sphase == 2>>
They know the name on the pocket now. Nobody double-checks their purse, a few even nod, and you can answer back once a week without it costing you.
<<else>>
The hallway makes room without being asked, and most of what happens in this building now happens because you let it.
<</if>>
</div>
</div>
<div class="board-entry">
<div class="board-row"><span class="board-label">School reputation</span><span class="board-value">$school_rep</span></div>
<div class="board-desc">
<<if $school_rep < 5>>
Nobody below decks owes you anything yet. Work orders build it - the dirtier the job, the faster the word travels.
<<elseif $school_rep < 10>>
The kitchen crew leaves you coffee and the night guard nods. Down here, that's a currency<<if $pollock_stage >= 1 && $pollock_stage < 3>> - and the invisible people will trade what they've seen of Her Majesty for favors owed<</if>>.
<<elseif $school_rep < 15>>
The below-decks people have decided you're one of them, which means the building talks to you now, in leaks and nods and unlocked doors.
<<else>>
From the dish pit to the night rounds, your name is good everywhere the lanyards never look. The other school - the real one - answers to you.
<</if>>
</div>
</div>
/* Both meters are maxed and unfarmable once the Reckoning fires - the Shannon Pollock entry below takes their place. */
<<if $pollock_stage < 3>>
<div class="board-entry">
<div class="board-row"><span class="board-label">Leverage on Pollock</span><span class="board-value">$pollock_leverage / 10</span></div>
<<set _lw = $pollock_leverage * 10>>
<div class="board-meter"><div class="board-meter-fill" @style="'width:' + _lw + '%'"></div></div>
<div class="board-desc">
<<if $pollock_leverage == 0>>
Nothing yet. She's ended four careers without ever raising her voice and your file on her is still an empty envelope.
<<elseif $pollock_leverage <= 2>>
Scraps: a phone call heard through the lounge wall, a shredder that didn't finish its job. Tells you where to dig and nothing else.
<<elseif $pollock_leverage <= 5>>
It's adding up. Numbers that don't match, boxes she won't let anyone else carry to her car. Walk in with half a case and she'll talk her way out of it before you finish the sentence.
<<elseif $pollock_leverage <= 8>>
Heavy enough now. Three pages of this in the right mailbox costs her the job, and she still has no idea the janitor is the one holding them.
<<else>>
Complete. A manila folder and a stamp would finish Shannon Pollock, which was never what Jamal sent you here for.
<</if>>
</div>
</div>
<div class="board-entry">
<div class="board-row"><span class="board-label">Master key</span><span class="board-value">$master_key / 3</span></div>
<<set _kw = Math.round($master_key / 3 * 100)>>
<div class="board-meter"><div class="board-meter-fill" @style="'width:' + _kw + '%'"></div></div>
<div class="board-desc">
<<if $master_key == 0>>
Every door in this school is still somebody else's. Risky work orders are where the pieces turn up.
<<elseif $master_key == 1>>
A dead janitor's keyring, mostly obsolete cuts. Two of them still bite.
<<elseif $master_key == 2>>
Soap impressions from the locksmith's case, waiting on a blank and a quiet night in the metal shop.
<<else>>
Cut, filed, tested. Authorized personnel means you now - including the office at the front of the building.
<</if>>
</div>
</div>
<</if>>
<<if $pollock_stage >= 3>>
<div class="board-entry">
<div class="board-row"><span class="board-label">Shannon Pollock</span><span class="board-value"><<if $pollock_stage >= 4>>settled<<elseif $pollock_route == 2>>her house<<elseif $pollock_route == 1>>room 021<<else>>terms pending<</if>></span></div>
<div class="board-desc">
<<if $pollock_stage >= 4>>
Nothing left on the board about her. The district system is open, it stays open, and it opens for anybody you hand it to.
<<elseif $pollock_route == 2>>
She named her price and you picked the shape of it. Her car, her street, her house in the middle of a work day - and a husband who doesn't get to choose whether he watches.
<<elseif $pollock_route == 1>>
She named her price and you picked the shape of it. She goes down to the basement of her own school as the principal, and you don't stay.
<<else>>
Every page you have on her is on this shelf, and none of it is what she wants to be charged with. She'll say the price herself.
<</if>>
</div>
</div>
<</if>>
</div>
<<if not $closet_bed && $school_rep >= 10>>
<p>You've earned enough slack around here that nobody clocks how long you spend in this room. Which raises a thought about the junk pile in the back.</p>
<<linkreplace "Fix the old couch">>
<p>You don't know why the previous janitor left this here, but it's in decent shape. You push the junk aside and test the frame. It holds. A man could live out of this room if he was careful.</p>
<<set $closet_bed = true>>
<div class="req">You can now spend the night in the closet instead of riding home.</div>
<</linkreplace>><br>
<</if>>
<<if $closet_bed && $school_time is "evening">>
<<rentinfo>>
[[Bed down for the night|Closet Sleep]]<br>
<</if>>
<<if $linda_stage == 1 && $day >= $linda_next_day>>
<<if $energy >= 2>>
<p>Someone has been waiting in your closet. The door is shut, and the light under it is on.</p>
<div class="req">[[Check the closet|Linda Closet]] (2 energy)</div>
<<else>>
<div class="req">Linda is waiting in the closet, but you need 2 energy for her session.</div>
<</if>>
<</if>>
[[Back to the hallway|Hallway]]<<if $physical < 0>>
<<goto "Game over">>
<<else>>
<<schoolphase>>
<p>You wait out the last of the after-hours noise - the night guard's first round, the boiler's argument with itself - then kill the tube light and stretch out on the cot. The building settles over you, tons of marble and money, none of it aware it's sheltering the enemy.</p><br>
<<if random(1, 100) <= 95>>
<p>You sleep the shallow, serviceable sleep of a man behind enemy lines - not rest so much as maintenance.</p><br>
<<set $energy = 8>>
<<else>>
<p>The dream finds you even here: sand, smoke, the young terrified face, the explosion that never finishes. You wake with your fist around the cot frame and the tube light's ghost buzzing in your ears.</p>
<div class="req">Your energy for the day is halved.</div><br>
<<set $energy = 4>>
<</if>>
<<if random(1, 100) <= 15>>
<<if _sphase == 1>>
<p>You misjudge the guard's round. His flashlight catches you lacing your boots at 5 AM, and the morning becomes a small ugly theater in the front office: the secretary, the write-up, the phrase "these people will move in if you let them" spoken about you while you stand there. You mop the lobby afterward while the early staff file past the janitor who apparently lives in a closet, like a raccoon.</p>
<<if $school_rep > 1>><<set $school_rep -= 2>><</if>>
<div class="req">School reputation: $school_rep</div><br>
<<else>>
<p>The night guard's flashlight finds you at 5 AM. He looks at the cot, at you, and shrugs. "Beats my commute," he says, and moves on. The building's invisible people keep each other's secrets.</p><br>
<</if>>
<</if>>
<<newday>>
<<schoolpay>>
<<if _rent_due>>
<p>Rent week. Even sleeping in a school closet, the room above the corner store stays yours only as long as the hood keeps it off the lists - and the envelope under that door doesn't care where you spent the night.</p><br>
<<set _choiceMade = false>>
<div id="choice-container">
<<if not _choiceMade>>
<<if $money >= 20>>
<<linkreplace "Set aside a twenty for the envelope ($20)">>
<<set _choiceMade = true>>
<<replace "#output">>
<p>You count a twenty out of your roll and button it into your inside pocket, where it stops being money and becomes rent. It goes under the door next time you're back, and the hood's books stay clean.</p><br>
<<statchange "money" -20>>
<br>
[[Start the day early|Hallway]]<</replace>>
<<replace "#choice-container">><</replace>>
<</linkreplace>><br>
<</if>>
<<linkreplace "Skip it this week">>
<<set _choiceMade = true>>
<<replace "#output">>
<<if $money >= 20>>
<p>You have the twenty and you keep it. Nobody will knock about it. But the hood keeps its own books, and this week yours show a man with money in his pocket and an empty envelope under his door, sleeping warm on somebody else's marble. Word gets back to the block before you do.</p><br>
<<statchange "respect" -20>>
<<else>>
<p>You don't have the twenty for the envelope. Nobody will knock about it - the hood just keeps its own books, and this week yours show a man who takes shelter and doesn't put in.</p><br>
<<statchange "respect" -10>>
<</if>>
<br>
[[Start the day early|Hallway]]<</replace>>
<<replace "#choice-container">><</replace>>
<</linkreplace>>
<</if>>
</div>
<div id="output"></div>
<<else>>
<br>
[[Start the day early|Hallway]]
<</if>>
<</if>><<pic "img/school/outside.jpg" "location">>
<<if $pollock_stage == 3 && $pollock_route == 2 && $day >= $pollock_next_day && $school_time isnot "evening">>
<p>You walk out the front in the middle of the day and nobody looks up. The Tesla is across the fire lane, and the passenger window slides down on Shannon Pollock in a summer dress.</p>
<<pic "img/school/syren/ride.jpg" "story">>
<<speech "Pollock" "Need a ride?" "pollock">>
<<if $energy >= 3>>
[[Get in|Pollock Owned]]<br>
<<else>>
<div class="req">A thing like this you get into rested or not at all (3 energy).</div>
<</if>>
[[Not today|Hallway]]
<<elseif $william_stage == 0 && $incel_stage >= 1 && $ella_stage >= 11>>
<p>You punch out through the service door and head for the bus stop. Students spill into the lot around you, calling to drivers and climbing into cars. A silver Range Rover waits near the pickup line. The black man leaning against it has been watching the service entrance.</p>
[[See who is waiting|William Reunion]]
<<else>>
<p>You punch out and take the service door into the late light. Across the lot the students pour toward their rides, loud and untouchable, and you walk the other way, one more invisible man in grey. Twenty minutes on the bus between their world and yours, and neither one admits the other exists.</p>
[[Take the bus home|The Hood]]
<</if>><<pic "img/school/principal_office.webp" "location">>
<p>The principal's office is dark wood and framed handshakes: Pollock with the governor, Pollock with two senators, Pollock holding a novelty check the size of a door. Behind the desk, the woman herself doesn't look up from her monitor for a long thirty seconds.</p>
<<speech "Pollock" "The east corridor was mopped this morning. I walked it at ten. It did not meet the standard of this institution." "pollock">>
<p>You mopped that corridor twice. It could host surgery. You open your mouth and she raises one finger without looking at you, and something in the gesture - the total, bone-deep certainty that you will stop talking - closes your throat better than a hand could.</p>
<<speech "Pollock" "I don't require an explanation. I require it done again." "pollock">>
<p>She looks at you for the first time - a slow inventory from boots to face that files you somewhere between the floor buffer and the boiler.</p>
<<pic "img/school/syren/intro.jpg" "story">>
<<speech "Pollock" "And I require you to understand that you are here because someone in the district office believes in second chances. I don't. You are a line item, Mr. $player_surame. Line items that underperform get removed. Mop it again." "pollock">>
<p>She's already back in her monitor. On the sideboard behind her, a cabinet with a keyed lock and a fresh ring-stain on the wood above it - a wet glass, set down recently, in an office that officially contains no glasses.</p>
<p>You mop the corridor again. It takes forty minutes. Three students walk through the wet end on purpose.</p>
<<statchange "energy" -2>>
<<set $pollock_stage = 1>>
[[Back to work|Hallway]]<<if $pollock_stage == 1 && $pollock_leverage >= 3>>
<p>You knock. You go in. You've rehearsed this on your cot: the ledger strip, the overheard calls, laid out just enough to make her see you differently. It works on street bosses and warehouse foremen. You slide the photocopy across the desk and watch her face.</p>
<p>She reads it. And Shannon Pollock starts to laugh - a genuine laugh, warm, almost delighted, the first human sound you've ever heard her make.</p>
<<pic "img/school/syren/failed_confrontation.jpg" "story">>
<<speech "Pollock" "Oh, that's marvelous. The janitor is an investigator. Do you know what this is?" "pollock">>
<p>She holds up your evidence.</p>
<<speech "Pollock" "This is a piece of paper. Do you know what I am? I am an appointee of the party that counts the votes. You could hand this to a judge - you'd have to find one I haven't had dinner with - and the only thing anyone would investigate is how a man with your... paperwork got inside my school." "pollock">>
<p>She feeds the photocopy into the shredder beside her desk without breaking eye contact. It takes four seconds. They are long ones.</p>
<<speech "Pollock" "You're fortunate that firing you would mean explaining you. Instead: your hours are cut this week, your closet privileges are under review, and you will remember this feeling. Get out.">>
<p>Out in the corridor, hands shaking - rage, not fear, though from outside it looks the same - you take the inventory. Wrong: half-measures. Paper she can shred, in a system she owns. Right: the flinch. One quarter-second flinch before the laugh. There's a floor under her somewhere, something she can't shred, and you're the man who cleans under things.</p>
<p>Next time you don't knock until you're holding all of it.</p>
<<set $pollock_stage = 2>>
<<if $school_rep > 2>><<set $school_rep -= 3>><</if>>
<div class="req">Half-measures. You'll need everything on her (leverage 10/10) and keys to everything (master key 3/3) before you try that door again.</div>
[[Back to work|Hallway]]
<<else>>
<p>Her door is shut. Not yet - and not with what you're holding.</p>
[[Back|Hallway]]
<</if>><<pic "img/school/principal_office_night.webp" "location">>
<p>The master key turns and her office opens for you like it's been waiting. Flashlight low, blinds drawn, gloves on. You go to the thing you've been circling for weeks: the locked cabinet with the ring-stain above it.</p>
<p>The small key from the dead janitor's ring fits. Of course it does - the cabinet came with the office, and men like you have always had the keys to everything the owners forgot.</p>
<p>Inside: bottles. Rows of them, expensive and half-dead, a private cellar folded into a filing cabinet - and behind the gin, the real prize. A bound ledger, handwritten, the twin of the shredded strip you found in her trash: two sets of precinct numbers per line, real and reported, going back three election cycles. She kept it. They always keep it. The guilt needs a place to live, and hers lives behind the bottles she drinks it quiet with.</p>
<p>There's a second cache on the lower shelf, and it's almost stranger than the first: a private pharmacy of serums and retinols, the thousand-dollar kind, and a printed consult sheet from a cosmetic clinic two towns over - booked under her maiden name. Tucked inside the ledger's back cover, church donation receipts in round, guilty numbers. Two fears in one cabinet: what she did, and what the mirror is doing to her. Either one is a handle, if a man knew how to pull it.</p>
<p>You photograph every page on the burner, wipe the glass, relock the cabinet, and put the dust back where dust goes. Shannon Pollock will sit at that desk tomorrow, sip her secret, and have absolutely no idea that the room now belongs to the janitor.</p>
<<set $pollock_leverage = Math.min(10, $pollock_leverage + 3)>>
<<statchange "energy" -2>>
<div class="req">Leverage on Pollock: $pollock_leverage/10</div>
[[Slip back out|Hallway]]<<if $pollock_stage != 2 || $pollock_leverage < 10 || $master_key < 3>>
<p>You have to be better prepared.</p>
[[Back|Hallway]]
<<else>>
<<pic "img/school/syren/reckoning.jpg" "story">>
<p>This time you don't knock.</p>
<p>The secretary's chair is empty, and her monitor is dark. Somebody sent her home. Only one person in this building can do that.</p>
<p>Blinds down. Door unlocked. The bottle is out on the blotter next to a glass she hasn't bothered to hide, and Shannon Pollock is behind the desk waiting for you.</p>
<<speech "Pollock" "Close it. I've had all morning to decide how surprised I'd be. The answer is not very." "pollock">>
<p>She knows you've been digging dirt on her, but you take the pleasure of laying it all out. The ledger, photographed page by page. Precinct sheets from the records annex. Six statements from people who have been invisible in her hallways for years and who talked to you for the price of being listened to. The clinic consult under her maiden name.</p>
<p>She glances over your materials: "that's a good one", "tsk-tsk-tsk", "would you look at that", as if enjoying the collection. </p>
<<speech "Pollock" "You've done your research; I'm even flattered someone took time to investigate poor old me. Good job, Mr. $player_surame. I'm afraid I can't just put this in the shredder anymore - you got me." "pollock">>
<p>Then she sits up, and her face changes gear, and you realize you are about to be negotiated with.</p>
<<speech "Pollock" "I suppose this is the part where you want to be paid for all your troubles. Sixty thousand. There is a stipend fund with a remarkably poor audit..." "pollock">>
<<speech "You" "No.">>
<p>Not a flicker. She turns the page.</p>
<<speech "Pollock" "Then out of the coveralls. Facilities coordinator, district payroll, and I sign your background waiver myself - which should interest you, Mr. $player_surame, because whoever made your paperwork did a good job and not a perfect one." "pollock">>
<p>That one is worth something. She has priced it correctly, too, and she watches you not take it with the first honest confusion you have ever seen on her.</p>
<<speech "You" "No. I need something else.">>
<p>She's quiet for a beat. Then she stands, comes around the desk, and starts on her jacket buttons.</p>
<<pic "img/school/syren/reckoning_2.jpg" "story">>
<<speech "Pollock" "Well, of course, what else could a black man want. I'm past my prime but..." "pollock">>
<<speech "You" "Put it back on.">>
<p>Her hands stop.</p>
<<speech "Pollock" "Well now you get me all confused. Are you blackmailing me or not?" "pollock">>
<p>She looks genuinely upset that there is no extortion, as if she already planned how this would spice up her life.</p>
<<speech "You" "I need access to school computer systems: database, surveillance, all that stuff.">>
<p>She does the buttons back up one at a time, goes around the desk, sits, and pulls the keyboard toward her.</p>
<p>Her hands get as far as the keys.</p>
<p>Then stop.</p>
<<speech "Pollock" "No." "pollock">>
<<speech "You" "You're not in a position for that word.">>
<<speech "Pollock" "I know! That's the thing!" "pollock">>
<p>She turns the glass a quarter turn on the blotter. Getting it straight. You've been cataloguing that one since your first week.</p>
<<speech "Pollock" "You just turned down money, a career and me. In that order. In under a minute." "pollock">>
<<speech "Pollock" "Do you know how long it has been since somebody wanted a thing off me that wasn't me?" "pollock">>
<<speech "Pollock" "If I type this, you walk out with a password, and I return to my boring old life. Nuh-uh. I need to be punished for all this!" "pollock">>
<p>She points at your materials - a heavy burden on her shoulders for all those years.</p>
<<speech "Pollock" "I did some bad things. I hate what my life has become. And you'd still need me on your side after I pass you the access! Come back tomorrow. I need to sober up." "pollock">>
<p>In the corridor, you replay your conversation. Does she try to buy more time? Maybe, but you were watching her face the whole time. Underneath it is a woman who wants redemption, and you can give it to her.</p>
<<set $pollock_stage = 3>>
<<set $pollock_next_day = $day + 1>>
<div class="req">She names her terms tomorrow afternoon.</div>
[[Get back to work|Hallway]]
<</if>><<if $pollock_stage != 3 || $pollock_route != 0 || $day < $pollock_next_day>>
<p>She said tomorrow, and she meant tomorrow.</p>
[[Back|Hallway]]
<<else>>
<!-- IMAGE: principal's office, blinds down - Pollock out of the jacket, two glasses on the blotter -->
<p>Empty desk, blinds down, door unlocked, secretary sent home: three orders, all of them given for you. The chain of command in this building has quietly reorganized itself around a man with a mop.</p>
<p>She isn't behind the desk. She's in the visitor's chair with the jacket over the back of it, surprisingly sober.</p>
<<speech "Pollock" "I want to add the last piece to your materials - my confession." "pollock">>
<p>Then she talks, and it comes out of her the way water comes out of a cracked dam.</p>
<<pic "img/school/syren/crying.jpg" "story">>
<p>The first counting adjustment was a favor for a man who made it sound procedural. The second was easier. The third came with a novelty check for the gymnasium and a photograph of her holding it. There was never a day she decided to be corrupt; instead, there were a hundred days of deciding nothing, and then it was too late.</p>
<p>The drinking started after the second cycle, to get to sleep. It stayed on to get through the afternoons.</p>
<<speech "Pollock" "Fifty-one. The cake in the staff room has said thirty-nine for five years, and nobody has ever corrected it, because nobody in this building looks at me long enough to do the arithmetic." "pollock">>
<<speech "Pollock" "I stopped rooms once. Now I hold a district in my fist, and I'm invisible inside it, and the only man who kneels for me does it because I tell him to." "pollock">>
<<speech "You" "You do look good, though. Money well spent.">>
<p>She laughs at that, ugly and grateful.</p>
<<speech "Pollock" "So. Here's the price." "pollock">>
<<speech "Pollock" "You get the system. Not a login - the whole thing, and me holding the door open as long as you want it open." "pollock">>
<<speech "Pollock" "And I need to be punished. See, a blackmail arrangement won't work on me - I don't want the return to status quo. And you look like a man who can... shake up my life." "pollock">>
<p>Careful choice of words.</p>
<<speech "You" "Let me guess - the punishment you imagine is submitting to a black dick and being owned by a black janitor.">>
<<speech "Pollock" "Well... This should work; it's so humiliating..." "pollock">>
<<speech "You" "Not for me. But as long as I get what I want, I don't care how.">>
<<speech "Pollock" "Well, I DO care... tell me how, exactly?" "pollock">>
<p>She finally gives up her control to you. Make your choice.</p>
<div id="choice-container">
<<link "You will own her personally">>
<<set $pollock_route = 2>>
<<set $pollock_next_day = $day + 1>>
<<replace "#choice-container">>
<<speech "You" "Tomorrow we get in your shiny car and drive to your house. And I make you my bitch on your own furniture.">>
<<speech "Pollock" "Tomorrow is Wednesday. Marcello doesn't teach Wednesdays. He'll be home." "pollock">>
<<speech "You" "I don't care about Marcello, and neither do you. He can sit there and watch a black man take his wife, or he can get out of the way.">>
<p>She bites her lip. The idea of Marcello watching her downfall makes her wet.</p>
<<speech "Pollock" "Make me yours." "pollock">>
<<statchange "energy" -1>>
[[Leave her to count the hours|Hallway]]
<</replace>>
<</link>><br>
<<if $incel_path == 2 && $incel_stage >= 11>>
<<link "She will be owned by your boys">>
<<set $pollock_route = 1>>
<<set $pollock_next_day = $day + 1>>
<<replace "#choice-container">>
<p>Three of her own students, in a classroom of her own school. Eighteen, graduating in gangbang.</p>
<<speech "Pollock" "Stop it, no way these kids would be interested in the old hag like me." "pollock">>
<<speech "You" "You've been on their mind for a long time. And when they fill your every hole with their big black dicks, you'll understand that age is just a number.">>
<p>You got her on the BBC part. She even looks younger already.</p>
<<speech "Pollock" "I think this fits perfectly. Being gangbanged by my own students... Oh, how humiliating this must be!" "pollock">>
<<statchange "energy" -1>>
[[It'll be arranged|Hallway]]
<</replace>>
<</link>>
<<else>>
<span class="req">There could be a gangbang option, but you don't have men for that. </span>
<</if>>
</div>
<</if>><<if $pollock_stage != 3 || $pollock_route != 2 || $day < $pollock_next_day || $energy < 3>>
<<if $energy < 3>>
<p>Not today. Whatever is waiting at the other end of that drive, you'd be no use to it.</p>
<<else>>
<p>The fire lane is empty. Whatever she's arranging, it isn't today.</p>
<</if>>
[[Back|Outside]]
<<else>>
<p>She drives the way she runs the building: signals early, checks mirrors she doesn't need, says nothing. The district scrolls past in descending order of money until it starts climbing again, and then it's her street. Old trees, deep lawns, houses that keep lawyers. A white colonial with a lawn service flag still pushed into the grass, and the Corolla in the drive.</p>
<<pic "img/school/syren/home.jpg" "story">>
<<speech "Pollock" "He's home every Wednesday, grading at the kitchen table. I didn't arrange anything. He's simply there." "pollock">>
<<speech "You" "Good.">>
<p>She kills the engine, sits with both hands on the wheel for one second, and gets out before she can think about it.</p>
<p>Marcello opens the door before you reach it. He looks at you. Then at her. Then he steps out of the way, because that's what he does - smiling awkwardly.</p>
<<pic "img/school/syren/marcelo_welcome.jpg" "story">>
<<speech "Marcello" "I put coffee on. I wasn't sure if - " "marcello">>
<<speech "Pollock" "Nobody wants coffee, Marc." "pollock">>
<p>Inside, the house is a resume. Staged rooms, a second wall of framed handshakes for anyone who missed the first, and two o'clock sun coming through the blinds hard enough to show the dust on the frames. The living room has a long pale couch nobody has ever sat on properly and a pinkish carpet that has never had anything spilled on it.</p>
<p>She stops in the middle of that carpet and gets one strap of the summer dress off her shoulder before her hands quit on her. Her husband is still in the doorway with his hands at his sides. Nobody has told him anything, and twenty years have taught him not to ask.</p>
<<speech "Pollock" "I don't know where to stand in my own house." "pollock">>
<<speech "You" "You don't stand anywhere. That's what you're paying for. Him, I decide.">>
<p>He looks at you like a dog hearing its name.</p>
<div id="choice-container">
<<link "He stays. He watches.">>
<<set $pollock_home_cuck = 2>>
<<replace "#choice-container">>
<<speech "You" "Marcello. Bring that chair round and sit in it. You're going to watch a black man fuck your wife in your own living room, and you're going to say thank you after.">>
<p>He does it fast, the way he does everything, dragging the reading chair across the carpet until it faces the couch straight on. Front row of his own living room. He sits with his knees together and his hands on the arms, and his slacks are already tented.</p>
<p>Shannon's head comes up. Whatever she was braced for, that was it.</p>
<<speech "Pollock" "You're really going to make him - " "pollock">>
<<speech "You" "Nobody's making him. Look at him.">>
<p>She looks. She has never seen that face do this.</p>
[[Let him have the view|Pollock Owned Watched]]
<</replace>>
<</link>><br>
<<link "Out. He isn't invited.">>
<<set $pollock_home_cuck = 1>>
<<replace "#choice-container">>
<<speech "You" "Marcello. Fuck off. Upstairs, the garage, the car, I don't care which. You come back down when she's done with me and not before.">>
<p>He blinks once, nods twice, too many times, and goes. His feet go up the stairs and a door shuts somewhere overhead. Whether it stays shut, whether he ends up with one eye at the crack of it, the landing will tell you, and you've already decided not to care. Let him watch through a keyhole like the help. It's his house and he still doesn't get a seat.</p>
<p>Shannon watches him go, and something moves across her face that the whole ledger never touched.</p>
<<speech "You" "Go change. Whatever you bought for this, and you bought something, go put it on. I'll be here.">>
<p>She goes. You undress and take the middle of the couch, arms along the back of it, dick hanging loose.</p>
[[Wait for her|Pollock Owned Private]]
<</replace>>
<</link>>
</div>
<div id="output"></div>
<</if>><p>You set the terms out loud so both of them hear the same sentence. His hands stay on the arms of the chair. He doesn't speak unless spoken to, he doesn't touch his wife, and he doesn't look away from her either, not for a second, or he goes out to the car.</p>
<<speech "Marcello" "Yes. Thank you. Yes." "marcello">>
<<speech "Pollock" "God. He thanked you for it." "pollock">>
<<speech "You" "He's going to thank me for a lot today. Get used to the sound.">>
<p>Then you finish what her hands quit on. No ceremony. The summer dress she bought for a ride across the district, unzipped down her back and left in a puddle around her heels. Beige underwear bought by a woman who stopped expecting to be seen in it, and she goes red to the collarbone when it comes off in front of her husband, because the daylight isn't doing her any favors and the daylight was her idea.</p>
<<pic "img/school/syren/solo_cuck_pose.jpg" "story">>
<p>Fifty-one years old and naked in the middle of the staged living room, big tits heavy and nipples gone hard in the air conditioning, arms half up and not knowing what to cover first. Across the carpet her husband watches with his mouth open. You take one tit in your hand and weigh it in front of him, thumb over the nipple, like you're pricing it.</p>
<<speech "You" "Marcello. When's the last time you had your hands on these?">>
<<speech "Marcello" "She doesn't - I'm not allowed to - " "marcello">>
<<speech "You" "That's what I thought. Watch what a black man does with them.">>
<p>You don't kiss her. You turn her around by the hip, put a hand flat between her shoulder blades and fold her over the arm of the couch, ass up, facing her husband, and she goes down with a noise she has never made in a room with witnesses in it. Your cock comes out and slaps against her ass cheek, and Marcello makes a sound in the chair like he's been hit.</p>
<<video "img/school/syren/home_cuck_0.mp4">>
<p>You're in her on the second push. She's wetter than either of you expected and it still isn't enough for the size of it, so she takes it in stages, up on her toes, fingers hooked white into the good upholstery. The third stage is where she stops being a principal. You bottom out against her cervix and hold there, and the sound that comes out of her is somewhere between a cough and a prayer.</p>
<p>Then you fuck her. Not fast: deep and unhurried and all the way out and all the way back, so every stroke gives Marcello the whole length of it going into his wife, black and slick and obscene against all that white skin, and then takes it out again for inspection. The couch shifts an inch on the carpet, then another.</p>
<<speech "You" "Tell him. He's got the best seat in the house, he should know what he's looking at.">>
<p>She turns her face to the side, finds her husband, and what comes out of her is the thing she couldn't say out loud in her office.</p>
<<speech "Pollock" "The janitor is fucking me, Marc. The black janitor is fucking your wife on your couch and it's the best I have felt in twenty years. Twenty years. Are you hearing me? It's so big. He's so deep. You never - you never once - " "pollock">>
<<speech "Marcello" "I know. I know, I'm sorry, I - " "marcello">>
<<speech "Pollock" "Don't be sorry. Watch." "pollock">>
<p>He makes a small hurt sound and his hips move in the chair. Nothing else about him moves. Her own hips push back to meet you for the first time.</p>
<p>It takes her another minute to ask for it, and she doesn't ask you, she asks over her shoulder like she's asking for a stapler.</p>
<<speech "Pollock" "Let him. Let him take it out and do it. I want to watch him while you're inside me. I want to see what he does." "pollock">>
<p>She asked you for permission on her husband's behalf. She hears herself do it, and her cunt clamps down hard enough that you have to stop moving for a second.</p>
<p>You pull out, flip her onto her back on the couch and take her ankles in one hand. Missionary, knees spread wide, her pussy stretched pink around black cock at exactly eye level with the chair.</p>
<<speech "You" "Belt off, Marcello. Take it out. Hands where she can see them.">>
<<video "img/school/syren/home_cuck_1.mp4">>
<p>He gets the buckle open with shaking fingers and pulls himself out, and there it is in the afternoon light: a pale little thing, thumb-sized, already leaking, and two fingers is all it needs. He strokes it in tiny fast motions while a black man rails his wife on the couch they bought together, whispering thank you at intervals, to nobody.</p>
<<speech "You" "Look at that, Shannon. That's what you married. That's what's been sleeping next to you. Now look down and tell me what's in you.">>
<<video "img/school/syren/home_cuck_2.mp4">>
<p>She looks at the pink thumb in her husband's fist and then at the black shaft splitting her open, and her whole face changes. Disgust would have been kinder to him, and pity kinder still. What's on it instead is contempt with the lid off, a whole marriage of it finally allowed out into the room, and under the contempt something that's almost tenderness, because he's giving her exactly what she needs him to be.</p>
<<speech "Pollock" "A black cock, Marcello. A real one, all the way in me, and you're sitting there tugging that little white thing like a boy. Look at yourself. Look at what you are. Faster. I want to see you do it faster while he fucks me." "pollock">>
<<speech "Marcello" "Yes, Shannon." "marcello">>
<<speech "You" "You don't answer her. You answer me. Faster.">>
<<speech "Marcello" "Yes. Sir. Yes." "marcello">>
<p>Sir. Her head goes back on the cushion at the word and she laughs, one bark of it, and you give her the last inch on the laugh and she stops being able to finish sentences at all.</p>
<p>The audience is what does it. You can feel the difference in her and so can she; she has performed for rooms her entire adult life, and this is the first room she has ever been the whole show in. Her heels come off the cushions, her hands go over her head and grab the armrest behind her, and she starts to shake.</p>
<<video "img/school/syren/home_cuck_3.mp4">>
<p>She comes on your cock with her husband four feet away and a hand on his own, and she doesn't go quiet with it. The first one is teeth-shut and disciplined out of pure habit; you tell her the discipline is over, and the second one takes the house. She says her name while it happens, her full name, the one that goes out over the PA every morning at eight, and then what a black man is doing to it, and then, eyes locked on the chair, that her husband is watching her get blacked, that he's watching, that she wants him to see it.</p>
<p>Marcello is crying a little, still stroking. She doesn't look away from him once.</p>
<p>When she can breathe she slides off the couch onto her knees on the carpet in front of you, and nobody told her to.</p>
<<speech "Pollock" "I want him to see me try." "pollock">>
<p>She takes it in both hands first and measures it against her own face, the way a woman compares a dress size she knows she doesn't wear, then gets the head into her mouth and pushes. Two inches. Four. Her jaw cracks wide, her eyes start streaming, and she keeps pushing anyway, gagging around the shaft with spit running off her chin onto her tits, making herself do it because her husband is watching her fail at it.</p>
<<video "img/school/syren/home_cuck_4.mp4">>
<p>She gets maybe half. You slap her ass, hard, open-handed, and the crack of it fills the quiet house.</p>
<<speech "You" "Deeper. Your husband drives home a woman who can't take a cock past her teeth? Deeper.">>
<p>Another slap. She goes down again, retching, and gets another inch. Then another. Her ass is going pink under your hand and she keeps pushing, both hands on your thighs, tears and snot and spit, choking on it in front of the man who made her dinner last night. The noises are not dignified and aren't meant to be. You hold the back of her head and let her work.</p>
<<speech "Pollock" "It doesn't fit. Marcello, it doesn't fit, I can't - " "pollock">>
<<speech "Marcello" "It's okay. It's okay, Shannon." "marcello">>
<<speech "Pollock" "It's not okay, you idiot, it's magnificent." "pollock">>
<p>Then she climbs on. Straddles you on the couch, takes you to the root on the way down, and rides you facing her husband so he gets every drop of the view: her ass working, her tits swinging loose, her cunt stretched white around a cock she'll be feeling again. She sets her own rhythm, the way she sets everything, and she narrates it for him the whole way: how full she is, how he never once filled her like this, and how she is going to think about it every time he goes down on her from now on. For a while you let her have it.</p>
<p>Then you don't.</p>
<<speech "You" "Off. Knees. Hands behind your back. Marcello, watch what your wife's face is for.">>
<p>She's off you and down on the carpet before the sentence ends, kneeling up with her back straight and her hands behind her, chin lifted, mouth open, in the exact posture she keeps her husband in.</p>
<<video "img/school/syren/home_cuck_5.mp4">>
<p>You come on her face. Thick and hot across one cheek, over the bridge of her nose, through her loose hair, a second rope over her open mouth and down her chin, and she holds the pose through all of it with her eyes shut and her tongue out, taking what lands there. Principal Shannon Pollock, glazed with a black man's load, kneeling on the living room rug at twenty past two on a Wednesday.</p>
<p>She opens her eyes, turns her head, still dripping, and looks at her husband in the chair.</p>
<<speech "Pollock" "Now you. All of it, on me. Come on your wife with his still on her face." "pollock">>
<p>He's out of that chair so fast it tips. He stands over his own wife with his pants around his knees and finishes in four strokes, and what comes out of him is thin and watery: her collarbone, her tits, the slope of her belly, weak little spurts landing on top of a load he can't come anywhere near matching.</p>
<<video "img/school/syren/home_cuck_6.mp4">>
<p>Then, with nobody telling him to, he goes down on his knees in front of her and starts thanking her. Then he thanks you. She lets him. She sits back on her heels in a puddle of two men and puts one hand on his head, absent, the way you'd touch a dog that finally did the trick, and over the top of him she looks at you.</p>
<<speech "Pollock" "Fuck I needed that." "pollock">>
[[After|Pollock Owned After]]<p>The house is quiet the way a house is quiet with a man in it trying not to be heard. A floorboard creaks on the landing, then nothing.</p>
<p>For the next couple of hours the couch is yours. Afternoon sun across the carpet, a clock ticking in the kitchen, and somewhere upstairs a drawer opening and shutting.</p>
<p>She comes down the stairs slower than she has ever taken a corridor, and you understand what the drawer was for.</p>
<<video "img/school/syren/home_creampie_1.mp4">>
<p>White lace. A bra that lifts her big tits and barely bothers to cover them, a garter belt, white stockings up to the soft of her thighs, and a scrap of white lace panties over a pussy you can already see the shape of. Hair down. Fifty-one years old, dressed like a bride, for the janitor, in the house her husband is hiding in.</p>
<p>She gets as far as the edge of the carpet and stops, and the principal is still there, shoulders back, chin up. She would like to be sultry and she has never been sultry in her life; what she has is command presence with the suit taken off it, and she stands there in white lace looking like she's about to tell you to mop it again.</p>
<<speech "Pollock" "Well. Say something." "pollock">>
<<speech "You" "You look like a bride.">>
<<speech "Pollock" "I'm aware of what I look like. I picked it out. I stood in a fitting room with a girl a third my age and told her it was for an anniversary, and she believed me, which was the most insulting part." "pollock">>
<<speech "You" "It is an anniversary. First day you belong to somebody. Get on the floor.">>
<p>She hesitates a full second, which is the longest anybody has ever made her wait for her own decision, and then she goes down onto the carpet, onto her knees and then onto her side, one arm propped, one leg drawn up, the pose from every catalogue she has ever flipped past. It's a good body under all that lace, kept expensive, and she knows how to hold it, and she still can't stop giving instructions with her eyebrows.</p>
<p>You don't move. You let her lie there and be looked at, and you watch the principal try to find the version of herself that lies on a floor for a man, and not find it, and get wet anyway.</p>
<<speech "You" "Crawl.">>
<<video "img/school/syren/home_creampie_2.mp4">>
<p>She crawls. Slow, on her hands and knees across the pinkish carpet, tits swinging in the lace, ass up, stockinged knees whispering on the pile, until she's between your boots.</p>
<p>Then she wraps her lips around the head, and her eyes close.</p>
<<video "img/school/syren/home_creampie_3.mp4">>
<p>You sit back and take a moment with it. Principal Shannon Pollock, who filed you between the floor buffer and the boiler on the day you met, who raised one finger and closed your throat with it, is on her knees in white lace with your black cock in her mouth. Her hand is on your thigh. Her husband is somewhere above the ceiling with his ear to a door. And she knows exactly what this is. You can watch her know it. Every time she goes down she's the principal sucking the janitor's dick, and every time she comes up for air she's a little less the principal, and she goes down again anyway, because going down again is what she drove you here for.</p>
<<speech "You" "Look at me while you do it.">>
<p>She does. Wet eyes, lips stretched around black shaft, and the look in them is still trying to run the room and losing.</p>
<div id="throat-container">
<<link "Show her what her mouth is for">>
<<replace "#throat-container">>
<<video "img/school/syren/home_creampie_4.mp4">>
<p>You take her head in both hands, hair wrapped once around your fist, hold it still, and use her mouth. Not her sucking you. You fucking her face, feeding your cock in as far as it goes and then further, while her hands come up and flap against your thighs and her throat closes on it and opens and closes. She gags. She gags loud, wet, ugly, drool pouring off her chin into the white lace, and you hold her there with her nose an inch from your stomach until her eyes stream, and then you let her up for one breath and do it again.</p>
<<speech "You" "This is a real one, Shannon. First one you've ever had in your mouth. That's why it doesn't fit. Nobody trained you.">>
<p>She can't answer. She's choking on it, mascara running, spit stringing between her lips and your cock, used like a wet sleeve on a carpet that has never had anything spilled on it, and when you finally take it out of her she gasps, wipes her face with the back of her hand, and puts her mouth straight back on it without being told.</p>
<</replace>>
<</link>>
</div>
<p>You take it out of her mouth and she makes a small unhappy noise about that, the first honest complaint she has ever made in front of you.</p>
<<speech "You" "Couch. Hands and knees. Face that way.">>
<<video "img/school/syren/home_creampie_5.mp4">>
<p>She climbs up onto the pale couch on all fours, knees on the cushions, and puts her ass up. And then she wiggles it. Side to side, slow, a woman who has never been playful in her life trying it on in white lace with her stockinged feet hanging off the end of the couch, looking back over her shoulder to see if it's working. Whatever dignity a school principal is issued at appointment, she has about a teaspoon of it left, and it's in the panties.</p>
<p>You take those off her. Hooked in both thumbs, dragged down over the big soft white ass and left around her knees, and her pussy comes out into the daylight fat and pink and so wet the lace is stained dark. Before you can touch her she reaches back and slaps her own ass cheek, hard, leaves the hand there, and looks at you.</p>
<<speech "Pollock" "Well? I'm on my hands and knees for you in my own living room in three hundred dollars of underwear. Are you going to fuck me or admire me?" "pollock">>
<p>You put the head of your cock against her and hold it there.</p>
<div id="pace-container">
<<link "Let her set the pace">>
<<replace "#pace-container">>
<<video "img/school/syren/home_creampie_6.mp4">>
<p>You push in slow. Slower than she wants, an inch and a hold, another inch and a hold, letting her cunt figure out the size of it before you give her any more, and every hold gets a different noise out of her. Her fingers dig into the cushion. Her back bows. When you're finally all the way in, the whole length of black cock buried in the principal, you stop moving altogether and let her feel it stretch her.</p>
<p>It takes her about ten seconds to start moving on her own. A rock forward, a rock back. Then longer. Then she's fucking herself on it, sliding her big white ass back onto your cock and off again with her stockings bunching at the knees, the principal of Thatcher-Ellison nailing herself on a janitor's dick like a slut who has waited all year for the chance, and all you have to do is stand there and be the pole.</p>
<<speech "Pollock" "Oh God. Oh God, it's so - I can feel it in my - don't move. Don't you dare move. Let me. Let me." "pollock">>
<p>You let her. She's louder every stroke.</p>
<</replace>>
<<replace "#output">><<include "Pollock Owned Private Finish">><</replace>>
<</link>><br>
<<link "Take her like you own her">>
<<replace "#pace-container">>
<<video "img/school/syren/home_creampie_7.mp4">>
<p>You take her by the waist with both hands and slam in. All of it, one shove, no warning, and she screams into the cushion and her whole body tries to go forward off the couch and your hands don't let it. You drag her back onto it. You hold her hips like handles and fuck her the way you'd fuck something you bought: hard, deep, fast, the couch banging the wall, her tits swinging out of the lace, her pussy taking a beating it wasn't built for.</p>
<<speech "You" "This is what you are now. A hole I put my dick in. You don't get a say in how. You don't get a say in when. Say it.">>
<<speech "Pollock" "I don't - ah - I don't get a say - " "pollock">>
<<speech "You" "Say what you are.">>
<<speech "Pollock" "I'm where you put your dick. I'm yours. I'm your - oh fuck - I'm your fuckmeat, I'm your white fuckmeat, I'm - " "pollock">>
<p>Her pussy doesn't love it. You can feel that, the way it grips and flinches around the size and the speed. The rest of her loves it more than she has loved anything in a decade, and it's the rest of her that's screaming for more into the upholstery.</p>
<</replace>>
<<replace "#output">><<include "Pollock Owned Private Finish">><</replace>>
<</link>>
</div>
<div id="output"></div><p>You take it out of her long enough to turn her over, and she goes onto her back on the couch with her legs already opening for you, stockings up, lace bra pulled down under her tits. You put it back in her and lie down over her and fuck her like that, missionary, your weight on her, her heels crossing behind your back, her face six inches from yours with nowhere to hide it.</p>
<<video "img/school/syren/home_creampie_8.mp4">>
<p>It doesn't take long. Her breath goes short and then stops, her eyes go wide and unfocused on the ceiling, her cunt starts to spasm around you in fast hard pulses, and Shannon Pollock comes on a black cock in her own living room. Her thighs shake. Something warm splashes out of her around the shaft and runs down the crack of her ass onto the cushion. She squirts, actually squirts, on the couch nobody was allowed to sit on, and then the noise that comes out of her isn't a moan.</p>
<p>It's a giggle. High, breathless and silly, the kind of sound that belongs at a sleepover, coming out of the most feared woman in the building while she's still twitching on your dick with her stockinged feet in the air. She covers her mouth with her hand and does it again, and looks up at you over the hand, and that is the moment you know you own her, more than the lace or the crawling or the begging told you. There is nothing left in her that isn't yours.</p>
<<speech "Pollock" "I've never - that has never - oh my God. Oh my God, what did you do to me." "pollock">>
<<speech "You" "Not done yet. Get on.">>
<p>You lie back on the wet cushion and pull her up on top of you, and she straddles you and sinks down onto your cock with a long shaking breath, stockings either side of your hips, tits in your face. You take her ass in both hands, a handful each, soft and big and pale, spread wide, and you move her, fast, using her like a weight, pulling her down onto you and driving up into her at the same time, hard enough that her hands go flat on your chest to keep from being thrown off.</p>
<<video "img/school/syren/home_creampie_9.mp4">>
<p>She's still coming, or coming again; you can't tell and neither can she. You go until your balls tighten and then you hold her down on it, all the way, and come inside her, deep, rope after rope pumped into the principal's cunt, into a white woman in bridal lace who has never once in twenty years of marriage had a man finish in her without a conversation first, and she feels it, she says so, she says it's hot, she says she can feel you filling her up, and she grinds down on it to get more.</p>
<p>When you lift her off, it follows. A thick white run of it out of a pussy stretched open and slow to close, down her thigh and into the top of one stocking, marking her. She looks down at it dripping out of her and doesn't reach for anything to wipe it with.</p>
<<video "img/school/syren/home_creampie_10.mp4">>
<p>Instead she slides down. Off the couch, onto her knees on the carpet between your legs, and she bends her head and starts licking the drops of your cum off your belly, tongue flat and slow. Then your cock, softening and slick with the both of you, and she takes it in her mouth and cleans it, base to tip, sucking gently at the head until there's nothing left on it, and she does not look up while she does it. A principal on her knees cleaning her janitor's dick with her tongue. There's no version of this she gets to run, so she has found the version where she serves instead, and it turns out she's very thorough.</p>
<p>Somewhere upstairs, a floorboard on the landing. She hears it too, and keeps going.</p>
[[After|Pollock Owned After]]<<if $pollock_home_cuck >= 2>>
<<pic "img/school/syren/solo_cuck_facial.jpg" "story">>
<p>After, she doesn't get up. She sits on the carpet in the wreck of it with her back against the couch, two men's cum drying on her and Marcello's head in her lap, and she looks around her own living room like she's been shown into it for the first time: the framed handshakes, the lawn service flag out the window, the pale couch with a wet patch on it the shape of her.</p>
<<else>>
<p>After, she stays on her knees for a while with her cheek against your thigh, in the ruined lace, your cum still leaking out of her onto the carpet, and she looks around her own living room like she's been shown into it for the first time: the framed handshakes, the lawn service flag out the window, the pale couch with a wet patch on it the shape of her.</p>
<</if>>
<<speech "Pollock" "Nine years I've walked through this room to get to the stairs. I have never once been on the floor of it." "pollock">>
<p>She says it to the room, not to you. What happened on this carpet isn't something she can file. In her own house, in daylight, she has just <<if $pollock_home_cuck >= 2>>been stripped, bent over, fucked and painted by the black man who mops her corridors, while her husband watched from a chair and stroked his little dick and thanked you both for it<<else>>crawled across the floor in bridal lace, choked on a black cock, and been fucked till she squirted and filled to leaking by the man who mops her corridors, with her husband hiding upstairs from the noise<</if>>. There's no ledger for that, and no way back to the woman who walked the east corridor at ten. The procedural, invisible thing she has been for a decade, the woman who got through afternoons on wine, died on this floor with the blinds open, and what got up in its place is a black man's whore who happens to hold a district in her fist. She looks twenty pounds lighter.</p>
<<speech "Pollock" "I thought it would feel like the end of something." "pollock">>
<<speech "You" "It is.">>
<<speech "Pollock" "It feels like the opposite." "pollock">>
<p>Then she <<if $pollock_home_cuck >= 2>>pushes Marcello's head off her lap, not unkindly, and <</if>>gets up.</p>
<<speech "Pollock" "You'll want something concrete." "pollock">>
<p>She crosses the room without the walk, cum <<if $pollock_home_cuck >= 2>>drying on her collarbone<<else>>running into the top of one stocking<</if>>, and opens a drawer in the sideboard. What she comes back with fits in her palm: a white plastic keycard, unbranded, and zip-tied through the punch hole, a stubby black security key.</p>
<<pic "img/school/syren/access.jpg" "story">>
<<speech "Pollock" "The card is a facilities directorate master. No name on it, no photo. It doesn't expire and it isn't logged against anybody. Opens every door with a reader on it." "pollock">>
<<speech "Pollock" "The key is the rest. It's the second factor for a maintenance login the audit doesn't see, and there's nothing else on it. It gets you into the student information system from anywhere, and into the camera recorder as well, but only from a machine inside the building." "pollock">>
<p>She puts it in your hand and closes your fingers over it with both of hers. It weighs nothing.</p>
<<speech "Pollock" "Not a password. A door, and the key to it, and you can hand the key to whoever you actually work for. I assume that's the arrangement." "pollock">>
<<if $pollock_home_cuck >= 2>>
<p>Marcello drives you back. She stands in the doorway in a robe with her hair still stuck to her cheek and watches the car out of the drive. Halfway across the district her husband clears his throat and asks, very politely, whether he did alright.</p>
<<speech "You" "You did fine, Marcello.">>
<<speech "Marcello" "Thank you. Thank you, sir." "marcello">>
<<else>>
<p>She drives you back herself, showered, in a plain dark sweater, sun still up, and she sits carefully. She drops you where the streetlights start going patchy.</p>
<</if>>
<<statchange "energy" -3>>
<<set $pollock_stage = 4>>
<<set $database_access = 1>>
<div class="req">Her keycard and security key are in your pocket. You have access to the school's systems, but you need someone's help to use it effectively.</div>
[[Head home|The Hood]]<<if $pollock_stage != 3 || $pollock_route != 1 || $day < $pollock_next_day || $energy < 2>>
<<if $energy < 2>>
<p>Need more energy to arrange that.</p>
<<elseif $day < $pollock_next_day>>
<p>She's clearing an afternoon. The boys know. Nobody rushes this.</p>
<<else>>
<p>Nothing is arranged. Not yet.</p>
<</if>>
[[Back|Hallway]]
<<else>>
<!-- IMAGE: principal's office at ten to five - Pollock in the visitor's chair, blouse and a skirt that isn't hers -->
<p>After last bell, the building empties in the usual order. Buses, then lanyards, then the lights drop to half upstairs, and by four-thirty Thatcher-Ellison belongs to the people who clean it.</p>
<p>You collect her at ten to five. She's been sitting in the visitor's chair since three.</p>
<p>The jacket is over the back of the chair, and it's staying there. Instead, she wears a white blouse, unbuttoned one button too far, and a red skirt that stops mid-thigh, a foot shorter than anything that has walked these corridors in the nine years she's run them. The tag is still in the bin by her desk.</p>
<<pic "img/school/syren/group_project_intro_1.jpg" "story">>
<<speech "Pollock" "Don't say anything. I'm aware of how it looks. I bought it for how it looks." "pollock">>
<p>You walk her up to an empty classroom where she will meet with your club. Her heels are loud on the stairs, and she doesn't slow down for the second flight, but on the landing she reaches back without turning around and takes hold of your sleeve, two fingers, and keeps it the rest of the way.</p>
<<if $pollock_husband >= 1>>
<p>Halfway down the corridor, she says the other thing, to the floor rather than to you.</p>
<<speech "Pollock" "Marcello drove me in. He's in the visitor lot. He'll sit in that Corolla until I tell him otherwise." "pollock">>
<p>She doesn't ask you what to do about him, but you can guess what she's hoping for.</p>
<</if>>
<p>There's a light under the door of 214. You knock once. Aaron opens it, and every trace of eighteen goes out of his face when he clocks the skirt.</p>
<p>Behind him, Terrence is already standing. So is Devin. Three of them. She walks in past you, past Aaron, and sits her ass on the teacher's desk with her legs crossed like it's a board meeting, and the room goes so quiet you can hear the clock.</p>
<<speech "Pollock" "Gentlemen. I'm told there has been talk about me. A ranking." "pollock">>
<<speech "Aaron" "First place, ma'am. Wasn't close." "aaron">>
<p>You give it four seconds, which is exactly how long it takes for the color to start up her throat. Then you hand her over.</p>
<<speech "You" "Have fun, all of you.">>
<<pic "img/school/syren/group_project_intro_2.jpg" "story">>
<p>Terrence starts to ask whether you're staying and works the answer out of your face before he finishes. You're not. This was never yours to run, and the woman perched on the desk in a skirt she bought to be taken off did not write your name on that line of the list.</p>
<<statchange "energy" -2>>
<<set $pollock_next_day = $day + 1>>
<<if $pollock_husband >= 1>>
<p>You clock out through the front like any other night and sign a book you already edited. In the visitor lot, a Corolla sits with its parking lights on, and behind the wheel, a bored and miserable man.</p>
<p>He doesn't know what's about to happen. You do.</p>
<div id="choice-container">
<<link "Go tell him his wife is waiting in 214">>
<<set $pollock_group_done = 2>>
<<replace "#choice-container">>
<p>You cross the lot and tap on his window. He rolls it down with the face of a man who has never once been approached in a parking lot with good news.</p>
<<speech "You" "Mr. Pollock. Your wife's still upstairs, room 214, second floor. She wanted to sort out that lunch order. You should go on up and check on her.">>
<<speech "Marcello" "Oh. Oh, thank you. She did say lunch. Second floor, you said? I'll just - yes. Thank you." "marcello">>
<p>He's out of the car before the window is up, straightening a tie that won't be straight for long, walking fast the way a man walks toward a phone call from his wife. He doesn't ask why the janitor knows where she is. He never asks anything.</p>
<p>Twenty years that man has knelt for her on a schedule. Tonight he gets to find out what she looks like when she's the one on her knees, and three eighteen-year-olds are going to be the ones who show him.</p>
<</replace>>
<<replace "#closing">><p>The last bus takes you home with your hands perfectly steady. The boys will have a report tomorrow. They always do.</p>[[Head home|The Hood]]<</replace>>
<</link>><br>
<<link "Leave him to his phone">>
<<set $pollock_group_done = 1>>
<<replace "#choice-container">>
<p>Let him sit. He can drive her home after and smell it on her. You walk past the Corolla without slowing down.</p>
<</replace>>
<<replace "#closing">><p>The last bus takes you home with your hands perfectly steady. The boys will have a report tomorrow. They always do.</p>[[Head home|The Hood]]<</replace>>
<</link>>
</div>
<div id="closing"></div>
<<else>>
<<set $pollock_group_done = 1>>
<p>You clock out through the front like any other night, sign a book you already edited, and catch the last bus home with your hands perfectly steady. The boys will have a report tomorrow. They always do.</p>
[[Head home|The Hood]]
<</if>>
<</if>><<if $pollock_stage != 3 || $pollock_route != 1 || not $pollock_group_done || $day < $pollock_next_day || $energy < 2>>
<<if $energy < 2>>
<p>Need more energy.</p>
<<else>>
<p>Room 021 is dark, or it isn't the day for it.</p>
<</if>>
[[Back|Hallway]]
<<else>>
<<set _cuck = $pollock_group_done >= 2>>
<!-- IMAGE: room 021 - the three of them, one phone face-down on the desk, the whiteboard still not wiped -->
<p>The room has been cleaned, there's a phone face-down in the middle of the desk that nobody is touching, and the whiteboard still says GROUP PROJECT DEBRIEF.</p>
<<speech "Aaron" "Okay so first thing you gotta know. First thing. For like ten minutes nobody could fuckin' MOVE." "aaron">>
<<speech "You" "Ten minutes.">>
<<speech "Terrence" "Nine and a half. She sat on the desk and crossed her legs and we just sat there like she'd called us in over a fire alarm. I've had that woman put me in detention for a hoodie. My dick knew what room it was in. The rest of me didn't." "terrence">>
<<speech "Devin" "She kept doin' the voice. The announcements voice. Askin' if we'd had a chance to review the material." "devin">>
<p>You can see it without the phone. Shannon Pollock on the edge of a teacher's desk in a blouse open to the bra and a skirt that ends where her thighs start, ankles crossed, hands folded on her knee, waiting the way she waits for a parent to finish yelling. Three boys who spent years ranking her tits on a forum, standing in a row by the door with their hands in their pockets, because the principal is in the room and you don't touch the principal.</p>
<<if _cuck>>
<p>And then the door opened.</p>
<<video "img/school/syren/group_project_1.mp4">>
<<speech "Aaron" "Bro. BRO. Her husband walks in. Mister Pollock. Civics. Tie and everything, sweatin' through it, and he goes, uh, Shannon, uh, will you be wanting something for lunch tomorrow." "aaron">>
<<speech "Devin" "Lunch." "devin">>
<<speech "Aaron" "LUNCH, man. She's sittin' there with her tits half out in front of three of her black students, and this dude wants to know about sandwiches." "aaron">>
<p>She told him she'd let him know, in the same voice, and he stood in the doorway awkwardly before leaving. Terrence says that's when the room finally started breathing, as if Marcello broke the tension.</p>
<<video "img/school/syren/group_project_2.mp4">>
<<speech "Terrence" "Second time he interrupted was maybe four minutes later. She'd just uncrossed her legs. Devin had gotten as far as touching her knee. And the husband clears his throat and says, you look very beautiful today, Shannon." "terrence">>
<<speech "Terrence" "She came off that desk like a shot. Had him against the wall by the chalkboard before I understood what I was looking at. Forearm across his chest. Heels on, so she was taller than him." "terrence">>
<<speech "Devin" "That's when I got hard, honestly. Not the skirt. That." "devin">>
<<video "img/school/syren/group_project_3.mp4">>
<p>She had him by the tie. Aaron does the voice, and it's a good impression, because he's heard it over the PA every morning for four years.</p>
<<speech "Pollock" "Why do you keep interrupting my class, Marcello? Do you see the students? They're waiting. What do you want?" "pollock">>
<<speech "Aaron" "And he goes, real small, I just wanted some attention. And she LAUGHS. Not a nice laugh. And she just, she undoes his belt right there. Yanks his slacks down to his knees, boxers too, in front of us. And there's this little pink soft thing. Like a thumb. I swear to God, like a thumb." "aaron">>
<<speech "Terrence" "It was about the size of my thumb. I'm not exaggerating for effect. She said, this is what I married, gentlemen, and then she laughed again, and he stood there with his pants around his knees and his little dick shrinking under the lights. And I think he was happy." "terrence">>
<p>She put him where she wanted him. Back to the wall, hands clasped behind him, chin up, eyes front. He asked, in a whisper, if he could kiss her. She leaned in close enough that he closed his eyes for it, and then she cracked him across the face with an open hand, loud enough that Devin says he felt it in his teeth.</p>
<<speech "Pollock" "Ohh, you want to kiss me? Too bad. That is not going to happen tonight. Watch." "pollock">>
<<video "img/school/syren/group_project_4.mp4">>
<p>Then she turned around, walked back to the desk, and left him standing against the chalkboard with a red handprint on his cheek and his dick out.</p>
<</if>>
<<speech "Aaron" "So she gets up ON the desk. Kneeling on it. And she says, come here, and we go, and she says you're not dreaming, boys, and she kisses Devin first." "aaron">>
<<video "img/school/syren/group_project_5.mp4">>
<<speech "Devin" "Tongue. Right away. Principal Pollock's tongue in my mouth. I couldn't feel my hands." "devin">>
<<speech "Terrence" "You could feel them. They were on her ass. Very carefully on her ass, like it was going to file a report." "terrence">>
<p>She went around all three, slow, one mouth at a time, and their hands crept over her like they'd be graded on it. A palm on a hip. Two fingers finding the edge of a bra through the blouse and stopping there until she pushed her tit into the hand and told the boy attached to it that she was fifty-one and would not break. Aaron says her nipples were hard enough to cut glass, and that this was the point where he stopped thinking of her as anybody's principal and started thinking of her as a pair of big tits with a mean mouth that wanted his dick in it.</p>
<<video "img/school/syren/group_project_6.mp4">>
<<speech "Aaron" "Then she's just, she's got dicks out. Three of 'em. Still on the desk, on all fours, goin' down the line like a fuckin' buffet. She's got Terrence in her throat and she's jerkin' me and Devin and she's talkin' with her mouth full." "aaron">>
<<speech "Terrence" "She reviewed us. Individually. Devin got, oh, that's thick, I'm going to feel that one. I got, my God, that's not going to fit, and then she made it fit. Aaron got, well, someone's been putting his hand up in class." "terrence">>
<<speech "Aaron" "I got the BEST review, is what he's sayin'." "aaron">>
<p>Devin was behind her by then. He got the zipper of that new skirt down and dragged it off her ass with her still sucking, and her ass came out of it pale and wide with a burgundy thong buried in the crack, and he slapped it. Hard, flat, the whole room heard it. She moaned around Terrence's dick and pushed it back at him for another.</p>
<<speech "Devin" "She said harder. So I did it harder. I've been scared of that woman since freshman year and I spanked her fuckin' ass red while she gagged on Terrence." "devin">>
<<video "img/school/syren/group_project_7.mp4">>
<p>Then it stopped being a warm-up. Terrence took her head in both hands and started fucking her face, proper, all the way in, and Devin got up on the desk behind her, pulled the thong to one side and shoved into her cunt in one go, and Principal Pollock, on her hands and knees on a teacher's desk in room 214, got spitroasted by two of her seniors while the third one filmed it and jerked off.</p>
<<speech "Aaron" "The NOISE, man. She was gaggin' so loud. Like wet, like, glug glug glug, and spit everywhere, all down her chin, on the desk, and Dev's got her hips and he's slammin' her, and she's still tryin' to talk between. Yes. Fuck me. Use me. Fuck your principal. I've never heard nothin' like it." "aaron">>
<<speech "Terrence" "She looked up at me while I was in her throat. Eyes running. Mascara gone. Still looked like she was going to give me a demerit. I nearly came right there." "terrence">>
<<video "img/school/syren/group_project_8.mp4">>
<p>They flipped her. On her back across the desk, tits out, head hanging off the edge. Aaron got between her thighs and fucked her, and Terrence stood over her face and she stuck her tongue out and went for his balls, sucked them one at a time, both, slurping at his sack while Aaron pounded her pussy so hard the desk walked across the floor.</p>
<<speech "Aaron" "Wettest pussy I ever had. Not even a joke. It was like, it was drippin' down her ass onto the desk. The PRINCIPAL, man, soakin' the furniture." "aaron">>
<<speech "Terrence" "Then she pulled me into her throat upside down, and she just held there. Nose against my balls. So Aaron pulled out and Devin got in, and then Aaron again, and we just kept swapping on her cunt while she deepthroated me, and she came on every one of us. Counted three. Might have missed one." "terrence">>
<<speech "Devin" "Four. I was countin'." "devin">>
<p>She was saying her age into the underside of the desk between dicks, Aaron tells you, like she was checking it was still true. Fifty-one. Fifty-one and I'm getting fucked by teens. Fifty-one and I'm the school slut. Not to anyone in particular, just out loud.</p>
<div id="anal-container">
<<link "Ask whether anyone tried her ass">>
<<replace "#anal-container">>
<<speech "You" "And her ass?">>
<p>Three faces do the same thing at once.</p>
<<speech "Aaron" "Oh, she took it in the ass. She took it balls deep in the ass. On the desk, on her back with her ankles by her ears, and she was the one who asked. Devin, she said, you've been staring at it all night, put it in." "aaron">>
<<video "img/school/syren/group_project_anal.webm">>
<<speech "Devin" "That butt can take some dicking, tho. She didn't even need us to go slow. Said Marcello hadn't been near it in fifteen years and she wanted to remember what it was for. I bottomed out in the principal's asshole and she screamed at the ceiling that she was a whore. That's on the phone too." "devin">>
<<include "Group Project Report Tail">>
<</replace>>
<</link>><br>
<<link "Ask what was next">>
<<replace "#anal-container">>
<<speech "You" "What was next?">>
<<include "Group Project Report Tail">>
<</replace>>
<</link>>
</div>
<</if>>/* The rest of Group Project Report after its forced choice (ask about her ass,
or what was next), included from both links so the report can't be read
past the question without picking one. */
<<set _cuck = $pollock_group_done >= 2>>
<<if _cuck>>
<p>Then, Terrence says, she remembered.</p>
<<speech "Terrence" "She'd honestly forgotten about him. He'd been against that wall the whole time with his hands behind his back and his little dick leaking on the floor, and she sat up with her hair all over her face and said, Marcello. Come here. Take everything off." "terrence">>
<<speech "Aaron" "And this dude STRIPS. Tie, shirt, shoes, socks, everything, folds it, and she has him climb up on the desk and lie on his belly and spread. Arms out, legs out. Like a starfish. Naked husband, spread eagle on the teacher's desk." "aaron">>
<<video "img/school/syren/group_project_9.mp4">>
<<speech "Devin" "We didn't know where to look. Like, do we look? I looked at the ceiling for a while." "devin">>
<p>They stood around the desk with their dicks in their hands, three hard black cocks over a soft white husband laid out like a specimen, and none of them could find the version of this that was in the videos.</p>
<<video "img/school/syren/group_project_10.mp4">>
<p>She knelt next to his face with her tits out, hanging over him, swinging them a couple of inches from his mouth and pulling back every time he tried to reach a nipple. Told him this is what the boys get. This is what he doesn't. Told him that a real dick had been in every hole he was smelling on her.</p>
<<speech "Aaron" "And she says to us, don't stop, boys, and we're just standin' there jerkin' off over her husband like three idiots. It was so fuckin' weird." "aaron">>
<p>Airtight. Terrence uses the word like he read it in a manual. Devin flat on the desk with her riding his dick, Aaron behind her with his cock up her ass, Terrence at the front end holding her ears and fucking her face, three black cocks in the principal at once, every hole plugged, and Marcello gets the best view of his wife getting gangbanged.</p>
<<video "img/school/syren/group_project_12.mp4">>
<<speech "Aaron" "I could feel Dev's dick through her. Like there's this thin wall and his dick's right there, and she's screamin' around Terrence, and the husband's just RIGHT THERE, man, watching my every move." "aaron">>
<<speech "Devin" "She came so hard she stopped breathing for a second. I felt it on my dick. Then she started laughin'. Laughin' with a cock in her throat. Laughin' at him." "devin">>
<<else>>
<p>Then Terrence said the word, and it turns out he'd been saving it.</p>
<<speech "Terrence" "Double. Devin lay down on the desk and she got on his dick, and I got behind her and put mine up her ass, and she said, oh, fuck, oh, both of you, oh, fill me. Both holes. Stuffed with black dick on district property." "terrence">>
<<speech "Aaron" "I had her by the hair for that one. She was suckin' me between screamin'. Couldn't do both at once. Nobody could." "aaron">>
<<video "img/school/syren/group_project_11.mp4">>
<p>Aaron plays the sound for you without turning the phone over. The audio alone is enough: two boys grunting in a rhythm that takes them a minute to find, a desk complaining, and a woman you have only ever heard at conversation volume howling that she's full, that she's a whore, that she wants them to break her, that it's the best she has ever been fucked in her life, by a mile, by a fucking mile.</p>
<<speech "Devin" "She came so hard she stopped breathing for a second. I felt it on my dick. Then she started laughin'." "devin">>
<</if>>
<p>They finished her on her knees on the classroom floor. Aaron went first because Aaron always goes first, and it landed across her nose and into her eye and she didn't flinch. Devin got her mouth. Terrence got her forehead and her hair and the rest of her mouth, and by the end her face was a mask, cum in her eyelashes, in the corners of her mouth, dripping off her chin onto her tits.<<if not _cuck>> She swallowed what was in her mouth with her eyes on the phone and said thank you, gentlemen, that will be all, in the announcements voice.<</if>></p>
<<video "img/school/syren/group_project_13.mp4">>
<<speech "Aaron" "She looked like a glazed donut, man. Principal Pollock. Glazed." "aaron">>
<<if _cuck>>
<<speech "Terrence" "Except she didn't swallow. That's the last part." "terrence">>
<<speech "Aaron" "Yeah, so she gets close to her husband and..." "aaron">>
<div id="kiss-container">
<<link "That's enough. I get the picture.">>
<<replace "#kiss-container">>
<<speech "You" "That's enough. I get the picture.">>
<<speech "Terrence" "Understood. Yeah, I wish I hadn't seen it either." "terrence">>
<</replace>>
<<replace "#output">><<include "Group Project Handover">><</replace>>
<</link>><br>
<<link "Go on.">>
<<replace "#kiss-container">>
<<video "img/school/syren/group_project_14.mp4">>
<<speech "Aaron" "She kissed him. Full on. Grabbed his face with both hands and opened her mouth on his and just, pushed it all in. All of it. All three of us. Into her husband's mouth. And he's makin' this noise, and she's got her tongue in there movin' it around, and he's, he ATE it. He swallowed it." "aaron">>
<<speech "Devin" "I threw up a little in my mouth. Not gonna lie." "devin">>
<<speech "Terrence" "She said thank you for coming, Marcello, and he said thank you, Shannon, and then she told him to get dressed and bring the car around. He shook our hands on the way out. All three of us. I wanted to wash it right away." "terrence">>
<</replace>>
<<replace "#output">><<include "Group Project Handover">><</replace>>
<</link>>
</div>
<div id="output"></div>
<<else>>
<<include "Group Project Handover">>
<</if>><p>Then Terrence puts something on the desk and the room goes quiet in a different register. A white plastic keycard, unbranded, and zip-tied through the punch hole, a stubby black security key.</p>
<<pic "img/school/syren/access.jpg" "story">>
<<speech "Terrence" "She had it in her bag. Sat on the floor after with her face still covered, dug it out, and made me repeat back what it was, twice, to check I had it. She said - I'm quoting, I wrote it down - give it to the man who cleans." "terrence">>
<<speech "Terrence" "The card is a facilities directorate master. No name, no photo, no expiry, not logged to anybody. Opens every door with a reader on it. The key is two-factor for a login the audit doesn't see, and that's all that's on it. She said the cameras take it too, but only from inside the building." "terrence">>
<p>Not a password. A door, and the key to it, handed over by a woman who didn't get to hand it over herself. Walking back up out of that basement with it in your pocket, you work out that this was the last thing she had left to give away.</p>
<<speech "Terrence" "I'm not going to ask what it's for. I'd just note that whatever it opens, it opens for anybody you give it to." "terrence">>
<p>He's right, and he wants you to know he knows it. Somewhere behind that is Adriana and a room full of scavenged monitors on the other side of the wall. Not today.</p>
<<statchange "energy" -2>>
<<set $pollock_stage = 4>>
<<set $database_access = 1>>
<div class="req">Pollock's keycard and security key are in your pocket. You have access to the school's systems, but you need someone's help to use it effectively.</div>
[[Back to work|Hallway]]<!-- IMAGE: school hallway by the trophy case - Albright mid-tirade, students filming -->
<p>Albright has you cornered by the trophy case, in full voice, over a smudge. Not a real smudge - a pretext. "I want to understand," she's telling the gathering audience, pearls trembling, "what it is you people find so difficult about GLASS - " and the phones are out, and you are doing the only thing the help can do, which is study the floor and wait for the weather to pass.</p>
<p>"Meredith." A new voice. Low, pleasant, and carrying like a slap.</p>
<p>The counselor comes through the crowd of students like they're a beaded curtain - blonde, mid-thirties, a pencil skirt fighting a body that belongs on different posters than the anti-bullying ones she staples up. Every boy in this school knows her name. You've heard it in the hallway said like a prayer: Ms. Britney Amber.</p>
<<pic "img/school/britney/intro.jpg" "story">>
<<speech "Britney" "Fun fact - I was just putting together next month's staff workshop on public shaming as a management style. This is great material. Keep going, I'll take notes." "britney">>
<p>Albright's mouth opens, closes, and reformats. "The trophy case - " "Sparkles," says Ms. Amber, not looking at it. The crowd is laughing now, and not at you, and Albright click-clacks away to file this somewhere for later.</p>
<p>The counselor turns to you, and here's the thing you notice, because noticing is your job: the sympathy on her face is real, but it isn't the whole story. Her eyes do a lap. Not the inventory Pollock did, boots to face, pricing an appliance. A different inventory entirely.</p>
<<speech "Britney" "You're the one they've all been sharpening their claws on. My office is behind the library, and my door's open - staff counts as people, whatever this place tells you. Come by after classes." "britney">>
<p>She walks away down the hall and does not look back, in the manner of a woman who knows precisely what the back of that skirt is doing and considers it a public service.</p>
<<set $amber_stage = 1>>
<<set $amber_next_day = $day>>
<<set $albright_heat += 1>>
[[Back to work|Hallway]]<<if ndef $incel_gangbang_arranged>><<set $incel_gangbang_arranged = false>><</if>>
<<if ndef $incel_deprogram_arranged>><<set $incel_deprogram_arranged = false>><</if>>
<<pic "img/school/councellor.webp" "location">>
<<if $day < $amber_next_day>>
<p>Her door is closed - a student session, by the murmur. The sign says BACK TO BEING AMAZING IN 30 MIN. Come back tomorrow.</p>
[[Back to the hallway|Hallway]]
<<else>>
<<switch $amber_stage>>
<<case 1>>
<p>Her office is the one room in the school that doesn't hate you on sight: soft chairs, plants that are alive, posters about believing in yourself. She closes the door behind you, and the click of the latch changes the room's chemistry entirely.</p>
<<speech "Britney" "Sit. Not the chair - the couch, the chair's for students. So. This place treats you rough. Tell me honestly: how angry are you, on a scale of one to arson?" "britney">>
<p>You give her the safe answer, the janitor's answer. She listens with her chin on her hand, and then she gets up, sits down next to you on the couch - close, thigh against yours, nothing accidental in a room where she arranges the furniture - and says:</p>
<<speech "Britney" "Bullshit. I watch you in that hallway holding it in and I want to open you up like a shaken bottle. That's a professional observation. Mostly." "britney">>
<p>Her hand lands on your knee for emphasis and forgets to leave. The talk keeps going - she's good, she gets more out of you in twenty minutes than Jamal gets in a month - but the hand migrates, slow and unhurried, up your thigh, and when you go hard under her palm she looks down at it, then up at you, with the delight of a scientist whose experiment has worked.</p>
<<pic "img/school/britney/first_meeting_1.jpg" "story">>
<<speech "Britney" "There he is." "britney">>
<p>She gives you one long, deliberate squeeze through the coveralls, thumb tracing the shape of you, and then - the cruelest thing anyone's done to you in this building - she pats it twice and stands up.</p>
<<speech "Britney" "Just so we’re clear, yes, I am well aware that this may be considered workplace harassment." "britney">>
<<speech "Britney" "Only here's the joke. Every harassment complaint in this building lands on my desk. I'm the intake. I'm the investigation. I'm the caring phone call after, to make sure you feel safe. You could report me to me, honey, and I'd walk us both through it." "britney">>
<p>You weigh in your position for a moment. Whether you pursue this affair with Ms. Britney Amber or not, your mission depends on building trust and leverage with staff and students. If a counselor wants to use you as a tough black man to play out her dirty fantasies - you gotta play along. You can’t afford to say no, just as many others who were hit on by their superiors.</p>
<<speech "Britney" "That's the session. Doctor's orders: come back tomorrow. We'll work on your... release schedule." "britney">>
<p>She holds the door for you. On your way out she murmurs, pitched for you alone: "And Mr. $player_surame - wear the coveralls. I've developed opinions about them."</p>
<<pic "img/school/britney/first_meeting_2.jpg" "story">>
<<set $amber_stage = 2>>
<<set $amber_next_day = $day + 1>>
[[Back to work|Hallway]]
<<case 2>>
<p>The sign is already turned to SESSION IN PROGRESS when you knock. She locks the door behind you, pulls the blind on the little window, and stands there a moment with her back to you, palms flat on the door, like a woman counting to ten and giving up at four.</p>
<<speech "Britney" "I've been thinking about this since yesterday. Through two parent conferences and a suicide-prevention webinar. Sit down on my couch and don't say anything sensible." "britney">>
<p>You sit. She doesn't kneel - not yet. She climbs into your lap instead, knees either side of your thighs, takes your jaw in one hand and kisses you like she's been rationed. It goes on. Her hands map you through the coveralls - chest, shoulders, the arms this job keeps hard - and she makes small approving sounds into your mouth like a woman reading a menu she already knows by heart.</p>
<<video "img/school/britney/second_meeting_1.mp4">>
<<speech "Britney" "Mm. Note for the file: patient presents as extremely kissable. Prognosis: I'm doomed." "britney">>
<p>Then she slides down off your lap onto the carpet, drags the zipper south, and works the coveralls open with the efficiency of long practice. When your cock springs out - heavy, hard since the door locked - it catches her across the cheek, and she goes still. Actually still, which for Britney Amber is an event.</p>
<<video "img/school/britney/second_meeting_2.mp4">>
<<speech "Britney" "God. There it is. You know what I do all day? I teach abstinence modules. I hand out pamphlets about respecting yourself. And the whole time THIS was mopping my hallway." "britney">>
<p>She wraps both hands around it, stacks them, and there's still cock left over. She looks up at you with something between grievance and religion.</p>
<<speech "Britney" "I'm a fraud, Mr. $player_surame. I'm the biggest slut in this zip code, and I have been DYING in this office." "britney">>
<div class="text">Her mouth is hovering an inch away, waiting on you. She'd hate to be rushed. She'd love to be rushed.</div>
<<set _choiceMade = false>>
<div id="choice-container">
<<if not _choiceMade>>
<<linkreplace "Lean back and let her worship">>
<<set _choiceMade = true>>
<<replace "#output">>
<p>You lean back into the counseling couch and let her set the pace, and the pace she picks is devotional. She noses under your shaft and takes her time with your balls - long slow drags of her tongue, one drawn into her mouth and rolled there while her fist works you overhead, her humming pitched low like she's found the one quiet hobby in her life. She talks between passes, because of course she does - about the weight of them, about how long a shift you must be saving up, about how this couch has heard confessions but nothing this honest.</p>
<<video "img/school/britney/second_meeting_3.mp4">>
<<speech "Britney" "Every boy in this school would sell his mother for my mouth. And I'm down here on my knees licking the janitor's balls like it's my birthday." "britney">>
<p>She keeps at it until your breathing gives you away, then climbs your cock with her tongue and finishes you with two hands and her face upturned, eyes open, greedy for it. You paint her - cheek, lips, one stripe up into her lashes - and she takes it like applause, jerking the last of it onto her tongue.</p>
<<video "img/school/britney/second_meeting_5.mp4">>
<p>She sits back on her heels, face glazed, and dabs at her lashes with a tissue from the box she keeps for crying students - not to clean it, just so she can blink.</p>
<<speech "Britney" "Best session I've had in years. Same time tomorrow - and that's me respecting MY needs, so you're not allowed to skip. It's in the pamphlet." "britney">>
<<statchange "energy" -2>>
<<set $amber_stage = 3>>
<<set $amber_next_day = $day + 1>>
[[Back to work|Hallway]]
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Lean back and let her worship"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Test her - biggest slut in the zip code is a big claim">>
<<set _choiceMade = true>>
<<replace "#output">>
<p>"Prove it, then." You gather her blonde hair into one fist, the professional bun coming apart in your hand, and feed her your cock until she runs out of room - then past it. She gags, loud and wet, mascara jumping its lanes on the first stroke, and when you ease back to let her quit she does the opposite: grabs your wrist and pulls it tighter into her hair.</p>
<<video "img/school/britney/second_meeting_4.mp4">>
<p>So you use her. Deep, unhurried strokes into her throat, her nose meeting your body, spit sheeting off her chin and stringing down onto the carpet she'll have to explain to no one because you're the one who cleans it. Every time you pull out she comes up gasping, and what she gasps is filth - more, harder, is that all the district's paying for - until her counselor voice is gone entirely and what's left is hoarse and happy.</p>
<<speech "Britney" "THAT'S - <i>hkk</i> - that's the treatment plan. Wreck it. I'll do the webinar in a whisper and think of you the WHOLE time." "britney">>
<p>When you finish you pull out and she tips her ruined face up, mouth open, tongue out, and you unload across it - lips, cheeks, the wreckage of her mascara - a mess even she has to close one eye for.</p>
<<video "img/school/britney/second_meeting_5.mp4">>
<p>She stays kneeling a moment, dripping, catching her breath. Then she reaches for the tissue box she keeps for crying students and starts repairs, grinning the whole time like she's won something.</p>
<<speech "Britney" "For the record, my throat has a MASTERS degree. Same time tomorrow - and that's me respecting MY needs, so you're not allowed to skip. It's in the pamphlet." "britney">>
<<statchange "energy" -2>>
<<set $amber_stage = 3>>
<<set $amber_next_day = $day + 1>>
[[Back to work|Hallway]]
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Test her - biggest slut in the zip code is a big claim"</em></div><</replace>>
<</linkreplace>><br>
<</if>>
</div>
<div id="output"></div>
<<case 3>>
<p>This time she doesn't bother with the script. The lock, the blind, and she's already sinking toward her knees with a hand on your zipper when you catch her wrists and pull her back up. She blinks at you, genuinely thrown - nobody interrupts Britney Amber mid-plan.</p>
<<speech "Britney" "Excuse me. I had an agenda. There were bullet points." "britney">>
<p>"New agenda." You take her backward to the familiar couch, pull her down, and drag the pencil skirt up her thighs. Underneath: bright green panties, the exact green of the RESPECT YOURSELF pamphlets on her wall, which she absolutely knows. You peel them down her legs, hook them off one ankle, and put your mouth on her before she's finished laughing about it.</p>
<<video "img/school/britney/vaginal-1.mp4">>
<p>She talks, of course. For about a minute. Then your tongue finds the rhythm that shortens her sentences, and the counselor voice comes apart word by word - oh, oh you, oh FUCK - and her thighs clamp around your ears and she comes with her heel drumming the small of your back, loud enough for the library to reclassify some books.</p>
<<speech "Britney" "Okay. Okay okay okay. Your agenda. We're using your agenda. Couch. Lie DOWN." "britney">>
<p>She pushes you flat and mounts you before you've settled, sinking down with a long shivering exhale, and rides you slow-then-not - hands braced on your chest, hair down out of the bun and everywhere. You drive up to meet her and crack a palm across her ass, and the sound she makes isn't in any pamphlet. So you do it again. She grinds down hard, chasing something, then surprises you: climbs off your cock, crawls up your body, and plants herself on your face without a word of apology.</p>
<<video "img/school/britney/vaginal-2.mp4">>
<p>She rides your tongue holding the armrest like a steering wheel, and the second orgasm hits her faster than the first - she folds forward over the couch arm, shaking, swearing at the ceiling in her wellness-workshop voice.</p>
<p>By the time you lay her out on her back she's somewhere past language. Legs spread, chest blotchy, mascara gone soft, two orgasms deep and drunk on them - the biggest mouth in the district reduced to please and yes and a string of vowels. You slap her and she asks for more.</p>
<<speech "Britney" "Fuck me. Please. I've been good, I've been SO - please, fuck me, I'll write it up as a breakthrough - " "britney">>
<<video "img/school/britney/vaginal-3.mp4">>
<p>So you give it to her - long deep strokes while she claws your forearms, wraps her ankles behind you, begs prettier every minute. When you feel it building you pull out, and her hand dives down to her clit without instruction, rubbing fast, eyes locked on your cock, and you finish together - her arching up off the cushions while you lay thick ropes of cum across her tits, one reaching her collarbone. She milks the last of it into her mouth and licks you clean like she's grading it.</p>
<<video "img/school/britney/vaginal-4.mp4">>
<p>Afterward she sprawls across the couch, cum drying on her chest, skirt still bunched at her waist, glowing, and watches you dress with an expression you haven't seen aimed at you inside these walls: appraisal, of the good kind.</p>
<<speech "Britney" "For the record, that was malpractice. I'm the one who's supposed to facilitate breakthroughs. I saw GOD, Mr. $player_surame. Twice. Three times." "britney">>
<p>You take some time to recollect and cuddle.</p>
<<speech "Britney" "I've been thinking. Professionally. Detention supervision is unstaffed since Albright declared it beneath her - it's fifth period, it's paid, and it's the worst boys in the school in one room. Pollock will never give it to the janitor. But she'll give it to ME to solve, because I'm the one who writes the district wellness reports she gets ranked on." "britney">>
<p>She stretches, deliberate, unhurried.</p>
<<speech "Britney" "Give me a couple of days. I'm going to get my favorite maintenance issue a promotion." "britney">>
<<statchange "energy" -3>>
<<set $amber_stage = 4>>
<<set $amber_next_day = $day + 2>>
[[Back to work|Hallway]]
<<case 4>>
<p>There's a form on her desk when you come in, district letterhead, already signed at the bottom in Pollock's tight, furious hand: TEMPORARY REASSIGNMENT OF DUTIES - DETENTION SUPERVISION, FIFTH PERIOD. Where your name goes, someone has typed <<set _surname to $player_surame.toUpperCase()>><<set _initial to $player_name.charAt(0).toUpperCase()>>_surname, _initial. (FACILITIES) like each letter cost Pollock a tooth.</p>
<<speech "Britney" "You should have seen the meeting. I quoted her own mission statement at her - 'every member of our community a stakeholder in discipline' - and I may have implied the district equity office had asked about staffing diversity in student-facing roles. She signed it just to make me stop talking." "britney">>
<p>She hops up to sit on the desk beside the form, ankles crossed, immensely pleased with herself.</p>
<<speech "Britney" "Fifth period, room 019, in the basement by the boiler - they give detention the rooms nobody wants, you'll feel right at home. Fair warning: it's the Simmons boy and his little woe-is-me crew, the ones who live on those incel forums. Nobody's reached them all year." "britney">>
<p>A grin.</p>
<<speech "Britney" "But you're good at reaching people. Ask my couch." "britney">>
<<set $detention_job = true>>
<<set $school_job = 2>>
<<set $amber_stage = 5>>
<<set $amber_next_day = $day + 1>>
<div class="req">New position unlocked: detention supervisor, afternoon.</div>
[[Back to work|Hallway]]
<<case 5>>
<p>The blind is down before you knock, which means she's been watching the hallway for you. She locks the door, backs you toward the couch with one finger on your chest, and doesn't sit. Britney Amber not sitting is Britney Amber up to something.</p>
<<speech "Britney" "So. Last session was - and I'm choosing my words with my whole degree here - the best fuck of my life. Which leaves me with a professional dilemma: how does a woman say thank you for that?" "britney">>
<p>She turns around, hooks her thumbs into the pencil skirt, and peels it up over her hips. Nothing underneath. She sits on the couch, raises her legs and spreads herself so you can see exactly what she means.</p>
<<pic "img/school/britney/anal_pose_1.jpg" "story">>
<<speech "Britney" "Like this. I've been getting my ass ready all day - showered, stretched, half a bottle of lube in my desk next to the crisis pamphlets. My butt has been asking about your black monster since the first time it hit me in the face, and today you're invited." "britney">>
<p>Amber won't let you just take it. She pushes you down flat on the couch and gets herself on top - reverse cowgirl meaning she controls the pace and the depth. She notches your throbbing cockhead against her shithole and starts easing down...</p>
<<video "img/school/britney/anal_1.mp4">>
<p>It's slow going. She works you in an inch and stops, breathing through her teeth, thighs shaking with the effort of holding her own weight off you - takes another inch, swears at the ceiling, comes halfway back up. You realize she underestimated the size of your cock and the tightness of her, no doubt, experienced anus; one might say it's a stretch.</p>
<<speech "Britney" "Okay. Okay. It's - God - it's a LOT. Sorry, I..." "britney">>
<p>Nevertheless, Britney grinds through it by stubbornness alone, riding shallow, forehead damp, and somewhere in there the swearing changes key - less ow, more oh.</p>
<p>That's when you take over. You slide out of her, lay her out on her back on the couch, and fold her open. She grabs behind her own knees and spreads for you before you ask, and this time when you push into her ass, she finally enjoys the buttfucking.</p>
<<video "img/school/britney/anal_2.mp4">>
<p>Missionary, deep, her heels bouncing on your shoulders. She's got both hands full of her own tits, squeezing them like she's mad at them, babbling again but the sentences don't have verbs anymore - just yes and there and a filthy sermon about how full she is.</p>
<<speech "Britney" "You're tearing me a new one! And I fucking love it!" "britney">>
<p>After a while, you pull out and flip her over, and she scrambles into position like it was her idea - kneeled, chest down, back arched to a seductive angle. She reaches back and pulls one cheek open for you.</p>
<<video "img/school/britney/anal_3.mp4">>
<p>Doggy is where she takes back control. She sets her own rhythm, slamming herself back onto you, her ass rippling every time it claps against your hips. You barely have to move. Amber fucks herself on you and comes with her face down in the cushion, screaming into upholstery that has heard everything now.</p>
<<speech "Britney" "Before you're done... I want it in my mouth. Straight from my ass. Don't make it weird, just - I want to clean your dirty cock like a good girl. Full service. Say yes." "britney">>
<<set _atmChoiceMade = false>>
<div id="choice-container">
<<if not _atmChoiceMade>>
<<linkreplace "Give her ass-to-mouth like she's begging for">>
<<set _atmChoiceMade = true>>
<<replace "#output">>
<p>You pull out of her ass and she's off the couch and on her knees so fast she skins one on the carpet - doesn't notice, doesn't care. She takes your cock in both hands, straight from her gaping ass, and drags her tongue up the whole length of the shaft, root to tip, slow, eyes closed like she's tasting a vintage. Then again. Then the other side.</p>
<<video "img/school/britney/anal_atm.mp4">>
<<speech "Britney" "Mmm. It's actually nice, sweet even. Not that I was doubting my cleansing skills." "britney">>
<p>She worships you clean and then takes you deep, no hands, humming, and that finishes it - you unload down her throat while she swallows around you, milking every pulse with her fist, and she doesn't come off until you're soft enough to make her pout about it.</p>
<p>She sits back on her heels, licks a stray drop off her knuckle, and grins up at you like a woman who just got away with something in her own office.</p>
<<speech "Britney" "That may be the dirtiest thing I have ever done... And I'm enjoying it more than I'm ready to admit." "britney">>
<<statchange "energy" -3>>
<<set $amber_stage = 6>>
<<set $amber_atm += 1>>
<<set $amber_next_day = $day + 1>>
<<if $gunn_trust >= 4>><div class="req">A woman like this shouldn't run on one man's schedule. Something to raise with Tommy over a Friday beer, maybe - gym wing.</div><</if>>
[[Back to work|Hallway]]
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Give her ass-to-mouth like she's begging for"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "That's where you draw the line">>
<<set _atmChoiceMade = true>>
<<replace "#output">>
<<speech "You" "Too much!">>
<p> You keep fucking her while you say it, which undercuts the authority some, but the line is the line. She barks a laugh into the cushion, delighted rather than wounded, and shakes her ass at you like a rebuttal.</p>
<<speech "Britney" "A PRUDE. Busted! A janitor with a monster cock, balls deep in a school counselor's ass, and THAT'S where the gentleman lives. I'm putting it in your chart." "britney">>
<p>When you're at the edge you pull out, and she hands you - of course - a wet wipe from the desk drawer, next to the crisis pamphlets, because she planned for both answers. You clean yourself off while she settles onto her knees in front of the couch, face tipped up, mouth open, hands folded in her lap like the world's worst choir girl.</p>
<p> You paint her face in thick ropes: across her lips, up her cheek, one landing heavy over her eyebrow, and she takes each rope with a happy little flinch, like she's being knighted.</p>
<<video "img/school/britney/anal_facial.webm">>
<<speech "Britney" "There he is. All over my face in my own office, and he wouldn't let me lick it. You're a complicated man, Mr. $player_surame." "britney">>
<p>She dabs at her lashes with the crying-student tissues, humming, entirely pleased with her afternoon.</p>
<<statchange "energy" -3>>
<<set $amber_stage = 6>>
<<set $amber_next_day = $day + 1>>
<<if $gunn_trust >= 4>><div class="req">A woman like this shouldn't run on one man's schedule. Something to raise with Tommy over a Friday beer, maybe - gym wing.</div><</if>>
[[Back to work|Hallway]]
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"That's where you draw the line"</em></div><</replace>>
<</linkreplace>><br>
<</if>>
</div>
<div id="output"></div>
<<case 6>>
<p>The sessions continue - her word for it, delivered deadpan, "your treatment plan is long-term" - and the couch has developed a permanent lean. Lately she talks after, head on your chest, about her colleagues: who's cheating, who's medicated, what Albright's marriage sounds like through a shared office wall. She hoards this building's secrets the way Pollock hoards wine, and she's starting to share the cellar. Today's vintage: Pollock's assistant swears the principal's birthday cake has said 39 for five straight years, and that last year she made the bakery man scrape off the frosting and redo it when he got cute about it.</p>
<<if $incel_path == 1 && $incel_stage == 8 && not $incel_deprogram_arranged>>
<p>The boys' graduation workshop:</p>
[[Ask Amber to run the date-line workshop|Amber Club Deprogramming Offer]]<br>
<</if>>
<<if $incel_path == 2 && $incel_stage == 10 && not $incel_gangbang_arranged>>
<p>The boys' final exercise arrangements:</p>
[[Ask Amber's help with your gangbang club|Amber Club Gangbang Offer]]<br>
<</if>>
<<if $amber_shared == 1>>
<p>You bring up Tommy's proposal the way you'd defuse something, and get about four words in before her whole face lights up like the district approved her budget.</p>
<<speech "Britney" "Wait. WAIT. Tommy Gunn told you to ask me? Thomas 'Reno was a long time ago, Britney' Gunn? Oh, this school is FINALLY paying me back." "britney">>
<p>She's up off the couch, pacing, delighted, already planning it out loud - and on one point she's immovable: her office, after hours, home turf. "The gym ECHOES, and Tommy has never once in his life located a woman's clitoris under fluorescent lighting." Somewhere in the middle of the logistics she stops, comes back, and takes your face in both hands, suddenly almost serious.</p>
<<speech "Britney" "For the record, because my degree makes me say it: nobody is sharing me. I've wanted the two of you in a room since the day you dug through that dumpster for him. This is me, treating myself. Doctor's orders." "britney">>
<p>Then the grin comes back, wide and criminal.</p>
<<speech "Britney" "Tell Tommy: my office, after lockup. And tell him to stretch first. I'm not explaining a hamstring injury to the district." "britney">>
<<set $amber_shared = 2>>
<<set $amber_next_day = $day + 1>>
<div class="req">After hours: catch Tommy locking up the gym, then her office.</div>
<</if>>
[[Back to work|Hallway]]
<<default>>
<p>Her door is open, her couch is willing, and the rest of her story arrives in the next update.</p>
[[Back to the hallway|Hallway]]
<</switch>>
<</if>><<if ndef $incel_gangbang_arranged>><<set $incel_gangbang_arranged = false>><</if>>
<<if $incel_path != 2 || $incel_stage != 10 || $amber_stage < 6>>
<p>There is nothing to arrange yet. The boys need to finish their preparation, and Amber needs to be fully on side.</p>
[[Back to the hallway|Hallway]]
<<else>>
<p>You tell Amber what you've been doing with the alienated students this whole time. Her eyes widen.</p>
<<speech "Amber" "Three adult seniors, training to become a perfect gang-bang team? And you want me to be their first?" "britney">>
<p>For a moment you feel like you've gone too far. You know you've gone too far; but Amber should be right there, beyond any morality.</p>
<<speech "Amber" "WHAT A NICE SURPRISE! I can't wait to test your little project! They better be ready for what's coming for them. Tomorrow, classroom 102, don't be late." "britney">>
<p>When you leave her, Amber looks like she is already dreaming about big black cocks filling her holes.</p>
<<set $incel_gangbang_arranged = true>>
<<set $incel_next_day = $day + 1>>
<div class="req">Amber has approved the graduation exercise. Meet the boys in clubroom when they are ready.</div>
[[Leave the office|Hallway]]
<</if>><<if ndef $incel_deprogram_arranged>><<set $incel_deprogram_arranged = false>><</if>>
<<if $incel_path != 1 || $incel_stage != 8 || $amber_stage < 6>>
<p>There is no workshop to arrange yet. The boys need to finish their preparation, and Amber needs to be fully on side.</p>
[[Back to the hallway|Hallway]]
<<else>>
<p>You explain that the boys have reached the end of their incel deprogramming - and that you want Amber to run one final, very ordinary date lines workshop.</p>
<<speech "Amber" "You brought me a graduation and it is a dating-skills seminar? I was prepared for a much dirtier meeting." "britney">>
<p>She lets you sit in the silence for a second, then smiles and reaches for her calendar.</p>
<<speech "Amber" "Fine. Tomorrow, room 021. They get one real woman, real answers, and no scripts to hide behind. That should scare them properly." "britney">>
<<set $incel_deprogram_arranged = true>>
<<set $incel_next_day = $day + 1>>
<div class="req">Amber has scheduled the graduation workshop. Return to room 021 tomorrow.</div>
[[Leave the office|Hallway]]
<</if>><<pic "img/school/gym.webp" "location">>
<<set $gym_wing_day = $day>>
<<if $gunn_trust == 0>>
<p>The gym smells like every gym since the invention of boys: rubber, sweat, and floor wax you'll be reapplying. The coach is running freshmen with a whistle and a voice like a dump truck in low gear. Tracksuit, buzzcut gone grey at the sides, forearms like dock rope.</p>
<<pic "img/school/pe_full.jpg" "story">>
<p>His truck in the lot has a confederate flag sticker that made you file him under "problem" on day one.</p>
<<pic "img/school/confederate.jpg" "story">>
<p>He spots you and points at the bleachers without breaking his count.</p>
<<speech "Coach Gunn" "Boy - them bleachers fold in 'fore you mop under, not after. Last fella did it backwards a whole year. Drove me half insane." "coach_gunn">>
<p><i>Boy.</i></p>
<p>You fold the bleachers in first. He watches, nods once - the same single nod from your first day. On your way out he says, not looking up from his clipboard:</p>
<<speech "Coach Gunn" "Floor looks good, boy. Tell them office vultures I said you do it right." "coach_gunn">>
<p>Thanks, I guess.</p>
<<statchange "energy" -2>>
<<set $school_rep += 1>>
<<set $gunn_trust = 1>>
[[Back to the hallway|Hallway]]
<<elseif $gunn_trust == 1 && $gunn_case == 0>>
<p>You know something's wrong before you're through the gym doors: no whistle. Gunn is in his little glass office with Pollock, the secretary, and a blond junior you recognize - Bradley Whitmore, lacrosse, the kind of face that's never heard the word no from an adult it couldn't unemploy. Through the glass you watch the pantomime: Bradley's trembling lip, Pollock's folded arms, and on the desk between them, bagged like evidence on TV, a vape pen.</p>
<p>The story revealed later from hallway whispers: Bradley says Coach Gunn grabbed him by the collar and shook him, and that the vape they found in Gunn's office desk is the one Gunn supposedly confiscated and kept - proof of some deranged vendetta. Gunn benched Bradley last Friday for skipping practice. Now Gunn is suspended pending review, and the review is Pollock, and Pollock has been looking for a reason to replace him with somebody's nephew for two years.</p>
<p>Here's what you know that nobody asked the janitor: you emptied the gym wing bins Friday, and Bradley's locker-row bin held a vape pen's blister packaging - new, bought that week, receipt wadded in the same trash. It's all sitting in the dumpster's Friday bag, which gets hauled Thursday. You know exactly which bag. This will definitely clear the coach from accusations, but should you do it all for a confederate fan calling you "boy"?</p>
<<set _gunnChoiceMade = false>>
<div id="choice-container">
<<if $energy >= 2>>
<<linkreplace "Dig out the evidence (2 energy)">>
<<replace "#output">>
<p>You go through Friday's bag behind the gym at six AM, elbow-deep in banana peels and athletic tape, and come up with the blister pack and the receipt - Bradley's name right on the card slip, dated three days before the vape "appeared" in Gunn's desk. You photograph everything in place, the way you documented cache sites overseas, then leave the bag, the pack, and an anonymous note about Friday's trash pickup in the district reviewer's mailbox. Not Pollock's. The district's. Let her find out in a meeting, in front of witnesses.</p>
<p>It takes two days to detonate. Bradley's story develops what the review politely calls "inconsistencies," the suspension evaporates, and the vendetta case dies in a folder. Pollock's face all week is a study in swallowed fury - she knows somebody did this to her, and she cannot figure out who.</p>
<p>Friday afternoon the gym door opens while you're mopping the free-throw line, and Gunn walks over and stands there a moment, working on something.</p>
<<speech "Coach Gunn" "Trash gets picked up Thursdays. Whole school knows that. Exactly one man in this building knows what's IN it." "coach_gunn">>
<p>He puts out a hand roughly the size of a catcher's mitt.</p>
<<speech "Coach Gunn" "Thomas Gunn. Folks call me Tommy. Get it? Tommygun? Anyway, I figure you got a first name too, and I figure I been sayin' 'boy' at a man who just saved my pension." "coach_gunn">>
<<speech "You" "$player_name.">>
<p>You shake his hand still thinking how your fake name is becoming your real one. He nods at the bleachers, and for the first time somebody in this school says it:</p>
<<speech "Coach Gunn" "Sit down a minute. Nobody works standin' up on a Friday." "coach_gunn">>
<<statchange "energy" -2>>
<<set $gunn_case = 1>>
<<set $gunn_trust = 3>>
<<set $school_rep += 2>>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Dig out the evidence (2 energy)"</em></div><</replace>>
<</linkreplace>><br>
<</if>>
<<linkreplace "Stay invisible">>
<<replace "#output">>
<p>You keep your head down. It's the smart play - the cover comes first, the mission comes first, and no part of the mission is named Tommy Gunn. The review takes two weeks and ends the way reviews end when Pollock runs them: "resolved with a formal reprimand," which stays in his file forever, which is the point. Maybe this confederate-loving scum deserved that one way or another.</p>
<p>Thursday you watch the truck haul away Friday's bag, packaging, receipt, and all.</p>
<<set $gunn_case = -1>>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Stay invisible"</em></div><</replace>>
<</linkreplace>>
</div>
<div id="output"></div>
[[Back to the hallway|Hallway]]
<<elseif $gunn_case == 1 && $gunn_trust == 3>>
<p>Gunn's office after hours: two folding chairs, a mini-fridge with a padlock, and inside the mini-fridge, beer. He hands you one like it's contraband, which in this building it is.</p>
<<speech "Coach Gunn" "Twenty-two years here. Watched this place go from a school with rich kids in it to a money-laundry with a gym. You want to know about Her Majesty up front?" "coach_gunn">>
<p>He points the bottle at the ceiling, in the direction of the principal's office.</p>
<<speech "Coach Gunn" "Don't let the diction fool you. I seen her end four careers. Always the same play: she don't fire you, she REVIEWS you. Paper cuts till you bleed out. Whatever you're doin' in this school - and I ain't askin', 'cause a man who checks trash bags for strangers has his own business - don't leave her no paper." "coach_gunn">>
<p>You talk until the parking lot empties. He tells you which cameras haven't worked since 2019, which board member's kid can't be touched, what happened to the last janitor - "asked for a raise, got reviewed" - and you file all of it.<<if $amber_stage < 5>> Somewhere in the personnel rundown he gets to the counselor and chuckles into his bottle. "Britney's nice. Got tits, ass and legs - and keep spreadin' 'em', doing public service, if you ask me."<</if>> Somewhere in the second beer it stops being filing and starts being Friday night with, God help you, a friend.</p>
<<speech "Coach Gunn" "Folks see the truck and the flag and figure they got me read." "coach_gunn">>
<p>He shrugs, unbothered.</p>
<<speech "Coach Gunn" "My daddy's flag, my daddy's truck, and I ain't givin' the truck up. Lets the smart ones show me who does their thinkin' with their eyes. You didn't." "coach_gunn">>
<p>You did though.</p>
<div id="choice-container">
<<linkreplace "Press him on it">>
<<replace "#output">>
<p>You set your bottle down.</p>
<<speech "You" "That sticker does more talkin' than you think, Tommy. Every kid in that lot reads it before you ever open your mouth.">>
<<speech "Coach Gunn" "It's heritage, son. My people came out of Georgia." "coach_gunn">>
<<speech "You" "My people came out of Georgia too. That flag flew over the men holdin' the other end.">>
<p>He shifts in the folding chair. This is a road he's driven before, and he steers for the usual exit.</p>
<<speech "Coach Gunn" "Come on, war wasn't about that. States' rights. Any book down south'll tell you-" "coach_gunn">>
<<speech "You" "States' rights to do WHAT, Tommy?">>
<p>The gym hums. He opens his mouth, closes it, studies his bottle like the label might have the answer. It doesn't, and he's too honest a man to build one on the spot.</p>
<<speech "Coach Gunn" "...Huh." "coach_gunn">>
<p>That's all you get. The rest of the beer goes down quieter, but at the door he shakes your hand same as ever - maybe holds it a half-second longer.</p>
<<set $gunn_sticker = 1>>
<<set $gunn_trust = 4>>
<<if $pollock_leverage < 10>>
<<set $pollock_leverage += 1>>
<div class="req">Tommy's years of watching Pollock operate is leverage all by itself. Leverage: $pollock_leverage/10</div>
<</if>>
[[Head out|Hallway]]
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Press him on it"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Leave it be">>
<<replace "#output">>
<p>You sigh into the bottle and let it go. You've argued with that flag a lot, it's a quite popular insignia in the barracks, but it rarely achieves something but grudges. And you've known the kind of people like Tommy Gunn: he's a kind man after all, just hauling some baggage. Not yours to unpack tonight.</p>
<<speech "You" "Long as the truck starts, Tommy.">>
<p>He clinks his bottle against yours.</p>
<<set $gunn_sticker = -1>>
<<set $gunn_trust = 4>>
<<if $pollock_leverage < 10>>
<<set $pollock_leverage += 1>>
<div class="req">Tommy's years of watching Pollock operate is leverage all by itself. Leverage: $pollock_leverage/10</div>
<</if>>
[[Head out|Hallway]]
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Leave it be"</em></div><</replace>>
<</linkreplace>>
</div>
<div id="output"></div>
<<elseif $gunn_case == -1>>
<p>The gym runs colder these days. Gunn isn't rude - he says "boy" the same as ever, points at the same bleachers - but the nod is gone, and men like him do their real talking in nods. The reprimand sits in his file, and you remember that it was your decision to let it happen.</p>
[[Back to the hallway|Hallway]]
<<else>>
<<if $amber_stage >= 6 && not $amber_shared>>
[[Propose a threesome with Britney|Gunn Amber Offer]]<br>
<</if>>
<<if $amber_shared >= 2 && $day >= $amber_next_day>>
[[Stay late - Tommy's locking up, and Britney's office light is on|Gunn Amber Threesome]]<br>
<</if>>
<<if $gunn_sticker == 1>>
<p>Crossing the lot you clock the truck before you clock the man: a clean rectangle on the bumper where the sticker used to be, the paint around it sun-faded like a wall where a picture hung too long. You smile, knowing that you'll never bring it up again.</p>
<<set $gunn_sticker = 2>>
<<set $school_rep += 1>>
<<else>>
<<switch random(1, 4)>>
<<case 1>>
<p>You catch the end of practice and rack weights with Tommy after.</p>
<<statchange "physical" 1>>
<<case 2>>
<p>Tommy's rebuilding the batting cage nets and you hold, haul, and staple while he supplies commentary on every student athlete's future. Two hours pass like ten minutes.</p>
<<case 3>>
<p>Quiet afternoon in the gym. Tommy runs you through the heavy bag "for maintenance purposes," nods at your form once, and asks no questions about where a janitor learned to hit like ordnance.</p>
<<case 4>>
<p>Tommy's in a strange mood today, half amused, half discreet, and it takes a beer to shake it loose: Her Majesty Pollock cornered him in the copy room this week. Wanted a "personal conditioning program." Asked him - quietly, door open, like it was procurement - what actually keeps a body young.</p>
<<speech "Coach Gunn" "Told her the truth. Nothin' does. You just keep movin' and you don't look back at the pack. She got a look on her face like I'd read out a diagnosis. Woman runs this whole buildin' and she's scared of a CALENDAR." "coach_gunn">>
<p>He shakes his head and racks another plate. You file it, the way you file everything: the ice queen is counting years the way she counts votes - and finding both short.</p>
<</switch>>
<</if>>
[[Back to the hallway|Hallway]]
<</if>><p>The noise coming from the civics room isn't a fight. You know fights. This is worse - it's laughter with a single target. Through the open door: a paper airplane sails past the smartboard, which is showing a meme instead of the Constitution because somebody changed the login again, and a soft, balding man in a sweater vest is saying "Okay, guys. Okay. Guys," in the voice of a man who has said it four thousand times and been obeyed zero.</p>
<<pic "img/school/syren/marcelo.webp" "story">>
<p>A senior in a letterman jacket strolls out right past you, calls back over his shoulder: "Later, Mr. Shannon!" - and the room detonates. The teacher laughs too. That's the part that makes your stomach drop: he laughs along, because the only thing worse than the joke is being caught not taking it.</p>
<p>The bell empties the room. He crouches in the doorway gathering handouts the exodus scattered, and you crouch down to help because you're the janitor and paper on the floor is technically yours.</p>
<<speech "Marcello" "Oh - thank you. Thank you. They're good kids, really. High spirits. Civics after lunch is a tough slot, everyone says so." "marcello">>
<p>Up close he's younger than the sweater vest suggests, with the posture of a question mark. He shakes your hand like he's grateful you didn't decline it, and introduces himself twice.</p>
<<speech "Marcello" "Marcello Pollock. Marc, if you like. Yes - THAT Pollock. My wife runs the... well. You work for her. We all work for her." "marcello">>
<p>He says my wife the way other men say my supervisor, with a small flinch around the eyes, and then talks at you for ten unbroken minutes - about the smartboard login, about how he almost had a department head interview in another district once, about how nobody in the staffroom saves him a seat - because you are the first person in this building to hold still near him without smirking.</p>
<p>You do the math on your way back to the mop. The most feared woman in the building went home every night, for years, to the least feared man in it. Everyone in this school is scared of Shannon Pollock. Including, obviously, all five foot eight of her husband. That's not a marriage, that's a chain of command. And a man that starved for kindness is an unlocked door.</p>
<p>You file him where you file everything.</p>
<<set $pollock_husband = 1>>
<<if $pollock_stage < 3>>
<div class="req">Whatever that marriage looks like in the hallways, the private version happens somewhere. Marcello's Corolla has started showing up in the visitor lot around her lunch hour. Worth a look.</div>
<<else>>
<div class="req">Whatever that marriage looks like in the hallways, the private version happens somewhere, and you've just put a face to the man on the other side of it.</div>
<</if>>
[[Back to work|Hallway]]<<if $pollock_husband >= 999>>
<p>Lunch period, the Corolla in the visitor lot, the blind that doesn't quite meet the frame. You know exactly where to stand by now. Fifteen minutes of Shannon Pollock with the office door locked is worth more than a month of shredder bags - this is the version of her nobody else gets to audit.</p>
<<switch random(1, 3)>>
<<case 1>>
<p>Today she's at the window with the wine, skirt still on, and Marcello is face-down on the carpet kissing her shoes. Not a preamble - the whole program. She stands there working through a glass and a half while he tongues the leather clean, and when he lifts his head to ask for more she puts the heel on the back of his neck and returns him to his work without a word or a glance.</p>
<<speech "Pollock" "The left one, Marcello. You always neglect the left one. Story of this marriage." "pollock">>
<p>What's new since last time: the bottle. Same label as the cabinet stash, but this one lives in her desk drawer now, in arm's reach, and the glass and a half took her eleven minutes. You've watched drinkers your whole life. The cellar is migrating toward the surface.</p>
<<case 2>>
<p>She's sitting on the desk today, skirt around her waist, her husband's head locked between her thighs - and her attention forty years away. The thing in her free hand isn't her phone. It's a photograph, actual paper, and from your angle you catch it when she tilts it to the light: a girl at nineteen in a sash, some pageant stage, a smile that stopped rooms. She grinds against Marcello's mouth on a slow absent rhythm and never once looks down at him, eyes on the girl the whole time, like she's cheating on the whole room with her own past.</p>
<<speech "Pollock" "Slower. God. Nineteen years old and I let a PHOTOGRAPHER buy me dinner. I could have had anyone. Slower, I said." "pollock">>
<p>She finishes with her teeth set and her eyes wet - the wine, maybe - and puts the photograph back in the drawer that locks. You mark the drawer. Everything that woman is afraid of fits in furniture.</p>
<<case 3>>
<p>Today Marcello never gets touched at all. He kneels by the desk with his hands flat on his thighs while she eats her salad over district paperwork, and every few minutes she feeds him a fact instead of a bite: the anniversary he ruined, the department headship he didn't get, the year he stopped being worth undressing for. He takes each one with his eyes closed, hard in his slacks the whole time, thanking her. She never raises her voice. She's had years of practice keeping this at conversation volume.</p>
<<speech "Pollock" "Sit up straight. If I wanted something soft and grateful at my feet I'd have gotten a labrador, and a labrador would have made department head." "pollock">>
<p>Then, mid-cruelty, her computer chimes and her whole posture changes - shoulders in, chin down, voice suddenly careful. Whoever's on that screen outranks her, and there are maybe three people in the state who do. She closes the laptop half-shut before answering and angles it away from the door. Away from everyone. You add the chime to the file: Her Majesty has a leash too, and lunch hour is when it gets tugged.</p>
<</switch>>
<<set $marcello_next_day = $day + 3>>
<<statchange "energy" -1>>
<<if $pollock_leverage < 10>>
<<set $pollock_leverage += 1>>
<div class="req">Leverage on Pollock: $pollock_leverage/10. Her lunches are a diary she thinks nobody reads.</div>
<<else>>
<div class="req">Nothing you don't already hold - but watching the warden serve her own sentence never stops being useful.</div>
<</if>>
[[Slip away|Hallway]]
<<else>>
<p>Lunch period. The corridor by the front office empties out, her door is shut, and Marcello's sad little Corolla is in the visitor lot again. The blind on her door's window doesn't quite meet the frame - it never has - and you've cleaned this corridor enough times to know exactly where to stand.</p>
<p>Shannon Pollock is standing at her desk, skirt shoved up over her hips, a lunchtime wine glass already going in her hand. Her husband kneels behind her on the office carpet, at eye level with his wife's bare ass, waiting. Not touching. Waiting to be told.</p>
<<pic "img/school/syren/marcelo_cuni_1.jpg" "story">>
<<speech "Pollock" "Fifteen minutes, Marcello. Make them count for once." "pollock">>
<p>She reaches back, takes a fistful of his thinning hair, and pulls his face into her cunt from behind - and holds it there, steering him like a tool, hips grinding back against his mouth while she checks her email with the other hand. When he slows she tightens the grip and he whimpers into her and licks faster. His hands stay flat on his thighs. You'd bet the building he hasn't been told he can use them.</p>
<<video "img/school/syren/marcelo_cuni_2.webm">>
<<speech "Pollock" "I used to stop rooms, Marcello. Nineteen years old, rooms STOPPED. Now I get a man who counts it a good year if I let him kneel." "pollock">>
<p>She finishes with her teeth bared at her monitor, giving him nothing, then steps out of his reach and smooths her skirt down. He stays kneeling, eyes closed, blissful. She refills the glass.</p>
<p>You peel away from the door doing the math. A husband who serves on his knees, unpaid, unthanked, and grateful - that isn't a marriage problem. That's a finished product waiting for new management. Somebody's going to complete him one day, and it isn't going to be her.</p>
<<set $pollock_husband = 2>>
<<set $marcello_next_day = $day + 3>>
<<if $pollock_leverage < 10>>
<<set $pollock_leverage += 1>>
<</if>>
<<statchange "energy" -1>>
<div class="req">Leverage on Pollock: $pollock_leverage/10. Two doors into Shannon Pollock: the bottle and the ledger, or the mirror and the youth. Either way, the husband stays on his knees - and lunch hour keeps its schedule. Worth watching again in a few days.</div>
[[Slip away|Hallway]]
<</if>><p>Friday, gym empty, the padlocked fridge open. Two beers in, you bring up the counselor - carefully, the way you'd hand a man a live round. Tommy doesn't even blink. </p>
<<speech "Coach Gunn" "Britney. Yeah. Me and the counselor go way back, waay back. Coaching conference, Reno, 2015. Whole DISTRICT goes back with Britney, son - she's the best-kept worst-kept secret in public education." "coach_gunn">>
<p>He sets the bottle down and studies you a moment, and you watch him do the thinking on the couch, the sessions, the coveralls, and arrive at the correct total without a single question.</p>
<<speech "Coach Gunn" "So it's like that. Good. She's been wound tight all year - you're cheaper than what the district pays for morale." "coach_gunn">>
<<speech "You" "It's mutually beneficial. But the thing is, Amber is insatiable. I don't think one man is enough for her... Wanna share her pussy?">>
<p>You say the rest of it plainly, because Tommy's the kind of man you say things to plainly: the two of you, her, after hours. He nods once, slow, like you asked to borrow the truck.</p>
<<speech "Coach Gunn" "I'm in. Been in before, if we're keepin' honest books. But get somethin' straight, 'cause it matters - ain't a man alive SHARES Britney. Britney shares herself. You go ask her, with words, and if she says yes she'll say it louder'n you'd like. That woman never met a volume knob she respected." "coach_gunn">>
<p>He clinks his bottle against yours.</p>
<<set $amber_shared = 1>>
<div class="req">Britney gets the final vote. Stop by her office.</div>
[[Head out|Hallway]]<<if $amber_shared == 3>>
<<album "img/school/britney/coach_threesome/repeat_" 2 "jpg" "story">>
<p>It's a standing appointment now: Tommy locks the gym, and the two of you let yourselves into the counselor's office, where Britney has already dimmed the lamp and dispensed with most of her clothes and all of her ethics training. Tonight she takes you both until the couch develops a new noise.</p>
<<set _clip to "img/school/britney/coach_threesome/repeat_" + random(1, 3) + ".mp4">>
<<video _clip>>
<p>After, the three of you split one contraband beer among the crisis pamphlets, and Tommy reads a poster about healthy boundaries and laughs for a straight minute without explaining himself.</p>
<<statchange "energy" -3>>
<<set $amber_next_day = $day + 2>>
[[Slip out through the dark school|Hallway]]
<<else>>
<p>Tommy locks the gym at seven and walks the corridor once, checking doors that were already locked. Then the two of you cross the dark school to the one lit window behind the library. He knocks on the counselor's door like it's a principal's office.</p>
<p>Britney is posed against her desk in a tight black body - you'd bet money she rehearsed the pose. She looks the two of you over slowly, top to bottom, and doesn't bother asking why you've come. Everyone in this room did their reading.</p>
<<pic "img/school/britney/coach_threesome/pose_1.jpg" "story">>
<<speech "Britney" "Lock that door. I hope you've cleared your evening..." "britney">>
<p>She peels the body off - one shoulder, then the other, enjoying the growing bulges in your pants. Then, instead of coming to either of you, she sits down on her own carpet, spreads her knees, and starts playing with her pussy - two slow fingers, eyes moving between you and Tommy, working herself right up to the edge and then stopping, twice, on purpose, breathing like it costs her. You undress and start stroking your dicks, trying to keep up with her pace.</p>
<<pic "img/school/britney/coach_threesome/pose_2.jpg" "story">>
<<speech "Britney" "Okay, listen carefully. Tonight I want you rough with me. REALLY rough. Both of you, no checking in, no 'you okay.' I can take it." "britney">>
<p>Tommy looks at you the way he looks at a kid before a lift: you first. So it starts with her mouth - or rather it starts with her mouth being borrowed back and forth like shared equipment. You feed her your cock to the root and she takes it gagging and grateful; Tommy takes a fistful of blonde hair and does the same, slower, deeper; then back, then again.</p>
<<video "img/school/britney/coach_threesome/1.mp4">>
<p>Next, you lay her out on the couch and press your cock against her ass, and here's the difference a week of homework makes: she exhales once and takes you, all of you, in a single greased slide. Her butthole remembers you. You tell Tommy over her shoulder, conversational, like passing him a stat sheet.</p>
<<if $amber_atm >= 1>><<speech "You" "Wait when I pull it out, she likes the taste of her ass on my cock.">>
<<else>><<speech "You" "She has this weird thing for her ass...">><</if>>
<<speech "Coach Gunn" "She loves it. But she likes other asses too." "coach_gunn">>
<p>With a grace unnatural for a man of his build, he gets on top of her, planting his asscrack on Britney's face and his dick right between her round tits. He folds them around his cock with both big hands while the counselor enthusiastically rims his butt.</p>
<<video "img/school/britney/coach_threesome/2.mp4">>
<<speech "Coach Gunn" "Well, ain't she an overachiever." "coach_gunn">>
<p>She rims him like it's a competency review - deep, devoted, humming - while he fucks her tits and you pound her ass, and the noises coming out from under Tommy are the happiest slurping sounds this office has ever recorded.</p>
<p>You switch. On her side now, one leg cranked up over Tommy's shoulder: you slide into her pussy from the front while he crams into her ass from behind, and the counselor becomes a filling in a sandwich. Tommy bottoms out, frowns like a man testing a squat rack, and shoots you a look of genuine grievance.</p>
<<video "img/school/britney/coach_threesome/3.mp4">>
<<speech "Coach Gunn" "The hell'd you DO to this woman, son? This hole's had renovations." "coach_gunn">>
<<speech "Britney" "You can file an official complaint on my loose ass, and it will be reviewed by a man with a bigger dick." "britney">>
<p>Then the main event. You haul her up off the couch into a full nelson - her knees pinned up by her ears, all of her open and helpless and airborne - and jackhammer her ass, gravity doing half the work, her body bouncing on your cock like a doll's. Tommy steps in front, lines up, and slides into her pussy, and the two of you find a piston rhythm that has her eyes rolling white inside a minute. She stops narrating. She stops words entirely. Somewhere in the double-stuffed pounding she goes limp and floaty, drooling on her own chest, held up purely by the cocks in her and your grip, and comes so hard her whole body locks and shudders like a faulty machine.</p>
<<video "img/school/britney/coach_threesome/4.mp4">>
<p>You're both close, and she surfaces just enough to feel it - and looks back at you over her shoulder, glassy, mouth already open. You know exactly what she's asking for.</p>
<div id="choice-container">
<<linkreplace "Pull out and give her a taste of her ass again.">>
<<replace "#output">>
<p>You lower her out of the nelson and she hits her knees before they even work, wobbling, and takes your cock straight from her ass into her mouth without so much as a grimace - obedient, hungry cleaning, tongue dragging up the shaft while she moans at the taste like it's dessert. Tommy watches for exactly three seconds, then steps up beside you, and she turns her head and services him too, one cock in her mouth and one in her fist, swapping, thorough, a professional doing her best work.</p>
<<video "img/school/britney/coach_threesome/5.mp4">>
<<set $amber_atm += 1>>
<p>Cleaned and aching, you sit back on the couch and pull her onto you reverse cowgirl, her back to your chest, and put her ass back where it belongs. She rides you hard, slamming herself down, hands braced on your knees - and when you grab her hips and slam up into her the last few strokes, you empty everything you have deep in her guts, pumping her full while she grinds down and milks it out of you with a long, satisfied groan.</p>
<<video "img/school/britney/coach_threesome/6.mp4">>
<<if $amber_atm >= 2>>
<p>And because you've indulged this ass-to-mouth kink twice now, it owns her. She climbs off your softening cock with cum already leaking down her thighs, turns around, and licks you clean - slowly, filthily, base to tip, your cock dark and glazed straight from her creampied ass - then keeps going, lapping the smeared mess of ass-flavored cum and lube off your belly where she dripped on you, humming, eyes closed, an addict at the source.</p>
<<video "img/school/britney/coach_threesome/7.mp4">>
<<speech "Britney" "I just can't stop... I hope you love watching me do ass to mouth, because I love it!" "britney">>
<p>Tommy catches the depravity vibe and puts Britney in doggy on the couch, drives into her sloppy ass while your load is still up there, and fucks her flat-backed and grunting until he adds his own - a second creampie stacked on yours. Then he cups a big palm under her hole and gives the instruction of the evening.</p>
<<speech "Coach Gunn" "Push. All of it. Both of us. Attagirl." "coach_gunn">>
<p>She bears down and the mixed load of two men slides out of her gaped ass into his hand, thick and obscene, and he feeds it to her off his fingers like a post-workout supplement - and she takes it, every drop, licking his palm and then his cock clean after, kneeling there glazed and happy.</p>
<<video "img/school/britney/coach_threesome/8.mp4">>
<p>The three of you end up on the floor against the couch, wrecked, passing Tommy's contraband beer. Britney lies between you glowing like a woman who finally got the treatment plan right. You wonder whether you’ve successfully made some friends with benefits, or just useful assets.</p>
<<statchange "energy" -3>>
<<set $amber_shared = 3>>
<<set $amber_next_day = $day + 2>>
<div class="req">A standing arrangement. Tommy locks up some evenings - and her office light stays on.</div>
[[Slip out through the dark school|Hallway]]
<<else>>
<<include "Gunn Amber Facial">>
<</if>>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Pull out and feed her that ass again"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Keep her stuffed - no detours">>
<<replace "#output">>
<p>You keep her airborne and keep fucking, and whatever she was asking for gets pounded back down her throat as another orgasm rolls through her. You grab her hips and drive up into her the last few strokes and unload deep in her ass, filling her while she grinds and shakes and milks you dry.</p>
<<video "img/school/britney/coach_threesome/6.mp4">>
<<include "Gunn Amber Facial">>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Keep her stuffed - no detours"</em></div><</replace>>
<</linkreplace>>
</div>
<div id="output"></div>
<</if>>/* Shared tail of the threesome: Tommy's finish. Included by both branches of
"Gunn Amber Threesome" whenever the double-ATM route doesn't fire. */
<p>Tommy still hasn't finished, and Britney, sprawled boneless against your chest with your cum plugged deep in her ass, cracks one eye at him and taps her cheek. He strokes himself over her upturned face, breathing like a man at the end of a hill run, and you wonder how long he's been holding back.</p>
<div id="facial-choice">
<<linkreplace "Let the man cum in peace.">>
<<replace "#facial-output">>
<p>He plasters her. Three heavy ropes across her cheeks and lips, one in her hair, a coat of it, while she holds still with her tongue out like a good patient and catches what she can. He steps back, nods once - the good-mile nod - and hands her his gym towel.</p>
<<video "img/school/britney/coach_threesome/10.webm">>
<<speech "Coach Gunn" "Don't tell wellness." "coach_gunn">>
<<speech "Britney" "Tommy. I AM wellness." "britney">>
<p>The three of you end up on the floor against the couch, passing Tommy's contraband beer while her face dries. You wonder whether you’ve successfully made some friends with benefits, or just useful assets.</p>
<<statchange "energy" -3>>
<<set $amber_shared = 3>>
<<set $amber_next_day = $day + 2>>
<div class="req">A standing arrangement. Tommy locks up some evenings - and her office light stays on.</div>
[[Slip out through the dark school|Hallway]]
<</replace>>
<<replace "#facial-choice">><div class="choice-made"><em>"Stand back - let the man cum"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Egg him on - how long has he been saving that, since Reno?">>
<<replace "#facial-output">>
<<speech "You" "How long you been holding that, Coach? Since Reno?">>
<p>It's a joke. It stops being a joke immediately. Something goes across Tommy's face - a decade of something - and when he cums it isn't a load, it's a MAIN BREAK. The first blast crosses her face entirely and hits the couch cushion. The second soaks her hair. He keeps going, hosing her down in heavy pulsing gouts - her face, her tits, her outstretched hands when she starts laughing and can't stop - spraying past her onto the carpet, the pamphlet rack, a poster about trusting yourself, until she is genuinely, gleaming, dripping-off-the-chin DRENCHED and it is still coming.</p>
<<video "img/school/britney/coach_threesome/9.webm">>
<<speech "Britney" "TOMMY. WHAT. Since RENO?! Somebody get me a TOWEL - " "britney">>
<<speech "Coach Gunn" "Man maintains his composure long enough, it compounds. That's just interest, Britney." "coach_gunn">>
<p>Cleanup takes twenty minutes and all the crying-student tissues, and she supervises it from the couch, soaked and delighted, declaring the office a biohazard and the evening the single greatest wellness outcome of her career. You wonder whether you’ve successfully made some friends with benefits, or just useful assets.</p>
<<statchange "energy" -3>>
<<set $amber_shared = 3>>
<<set $amber_next_day = $day + 2>>
<div class="req">A standing arrangement. Tommy locks up some evenings - and her office light stays on. The carpet may never recover.</div>
[[Slip out through the dark school|Hallway]]
<</replace>>
<<replace "#facial-choice">><div class="choice-made"><em>"Egg him on - how long has he been saving that, since Reno?"</em></div><</replace>>
<</linkreplace>>
</div>
<div id="facial-output"></div><<pic "img/school/detention.png" "location">>
<<if $detention_job && $school_time is "afternoon">><<detentionroster>><</if>>
<<if not $detention_job>>
<p>Room 019 is locked, and detention is somebody else's problem. For now.</p>
[[Back to the hallway|Hallway]]
<<elseif $school_time isnot "afternoon">>
<p>Detention is available later in the day.</p>
[[Back to the hallway|Hallway]]
<<elseif $detention_day >= $day>>
<p>You've already run today's session.</p>
[[Back to the hallway|Hallway]]
<<elseif not $detention_has_students>>
<<if $linda_stage == 0 && $school_rep >= 10 && $energy >= 2>>
<p>The pink roster is blank, but the door opens anyway. A slender redhead in a senior blazer slips inside and closes it behind her with deliberate care. She keeps checking the empty hall through the narrow door window, as if somebody might catch the thought before she has to say it.</p>
<<pic "img/school/linda/linda.jpg" "story">>
<div class="req">[[See who came anyway|Linda Detention]] (2 energy)</div>
<<elseif $linda_stage == 0 && $school_rep >= 10>>
<p>The pink roster is blank, but you need 2 energy for the unexpected detention session.</p>
<div class="req">Linda will be back when you are rested.</div>
<<else>>
<p>The pink roster is blank. For once, nobody has been sent downstairs, and nobody needs watching. You take the unexpected free period and leave room 019 dark.</p>
<div class="req">No detention session today.</div>
[[Back to the hallway|Hallway]]
<</if>>
<<elseif $energy < 2>>
<p>Not enough energy for detention job.</p>
[[Back to the hallway|Hallway]]
<<elseif $detention_incel_roster && $incel_stage >= 3 && $detention_incel_relieved_day != $day && not (($incel_path == 1 && $incel_stage >= 9) || ($incel_path == 2 && $incel_stage >= 11))>>
<p>The whole crew is already in room 019, backpacks at their feet and identical pink slips folded in their hands. Aaron calls it collective bargaining; Terrence calls it a coordinated response to institutional bias. Whatever it is, room 021 will be empty until you deal with this.</p>
<div id="choice-container">
<<if $school_rep >= 3>>
<<link "Call in a favor and clear the boys (3 school rep)">><<set $school_rep -= 3>><<set $detention_incel_relieved_day = $day>><<set $detention_has_students = false>><<set $detention_day = $day>><<goto "Incel Club">><</link>><br>
<<else>>
<span class="req">Clearing the four of them needs a favor from people who trust you. School reputation: $school_rep/3.</span><br>
<</if>>
[[Keep them here and run detention|Detention Session]]<br>
[[Hallway]]
</div>
<<elseif not $detention_incel_roster || $incel_stage >= 2>>
[[Run the detention session|Detention Session]]
<<else>>
<<set $detention_day = $day>>
<<switch $incel_stage>>
<<case 0>>
<p>Room 019 is in the basement because detention is a landfill and the school likes its garbage out of sight. You are not surprised to see four black boys already there when you unlock the door, and the room goes silent, as rooms do when the joke walks in.
You know their files - Britney walked you through them on her couch, preparing you for your new job. It’s not like no one else gets detention - but these four seniors, eighteen apiece, are regulars. Mostly because they just don’t belong with other students and school overall - and Britney hopes you could fix that.</p>
<<pic "img/school/incels/aaron.jpg" "story">>
<p>Aaron Simmons: smart, angry, can't keep his mouth shut. He isn't even from the school's original district - his address got "adjusted" two summers ago, part of the Pollocks' schemes.</p>
<<pic "img/school/incels/isaiah.jpg" "story">>
<p>Isaiah: big, muscular, quiet. He’s a top athlete, and school tolerates him as long as he performs on the field.</p>
<<pic "img/school/incels/terrence.jpg" "story">>
<p>Terrence: small, nerdy, wearing glasses. Once he even got in trouble for breaking into the school computer system. He is a member of the "STEM outreach" scholarship the school brags about - and resents.</p>
<<pic "img/school/incels/devin.jpg" "story">>
<p>And Devin Hayes, the only kid with money in this group, and he ain’t restraining himself from showing it off. Old-money kids hate him even more for that. Also, his face looks familiar for some reason…</p>
<<speech "Aaron" "Now they send us the janitor, lol. Aight, what's the syllabus, sir? First period bleach, second period drain. We doing a unit on gum, or that's the AP class?" "aaron">>
<p>He knows that you don't belong here, that you're just a janitor, and he watches to see if you'll pretend otherwise. The other three watch too.</p>
<p>You don't pretend. You take the desk at the front, put your feet up, and tell them the truth: yeah, they got the janitor. The school put its trash in one room to save on hauling. This lands surprisingly well.</p>
<p>Rest of the shift goes calm; boys quietly do their thing while you skim through a history book. They recognize you as someone at the bottom of a school social ladder, just as they are, and save pranks and jokes for themselves. That’s a good outcome for a first meeting.</p>
<<statchange "energy" -2>>
<<statchange "school_rep" 1>>
<<set $incel_stage = 1>>
<div class="req">School reputation: $school_rep</div>
[[Lock up|Hallway]]
<<case 1>>
<p>Time goes by. Your familiar black delinquents have stopped performing for each other quite so hard - you're furniture now, and like all furniture, you hear everything. What you hear is Terrence, reading aloud to the others from the phone, in the flat reverent voice of a boy reciting scripture:</p>
<<speech "Terrence" "...says here it's OVER for guys like us. Statistically. Genetically. Says the game was rigged before we were born, so the only move is to stop playing." "terrence">>
<<speech "Aaron" "Man, that account is some basement-dwelling cracker in Ohio. Why you keep reading dis shit?" "aaron">>
<<speech "Terrence" "Because he's RIGHT about the rigged part. Ain't no bitches for us, bro, cos they need alpha males, and money, and status, and we got jackshit." "terrence">>
<<speech "Devin" "Well, I have money. Now, I just need your brains and Isaiah’s body… " "devin">>
<<speech "Terrence" "...and you still will be an outcast. Once societal hierarchy is established, you can’t change it." "terrence">>
<p>Is incel still a thing? You listen some more and hear the rest - money, genes, it's over for you, log in tomorrow for more.</p>
<<if $knowledge >=20>>
<p>You clear your throat and tell Terrence to read the rigged part again. Then you take it apart and rebuild it.
<<speech "You" "In this bullshit they sell you, the only true part is about the rig. Society fucked us, boys, and this school is an example of that.">>
You tell them things about this school they suspect but can't prove: the donor kids who don't get searched, the two review files Pollock keeps for the same offense in different colors. And then you tell them the part Ohio never will: rigged means you learn the rig. Rigged means discipline, information, patience - and each other. Every man in this room is the only backup every other man in this room will ever have.</p>
<<speech "You" "They want men like you to be divided and compete for jobs, for girls, for decent lives, and not question the system.">>
<p>A moment of silence after your speech is interrupted by the bell. It eases the tension and some of the boys chuckle - but you see that you planted an idea successfully.</p>
<p>Devin looks at the floor, then makes himself look up.</p>
<<speech "Devin" "Listen, you seem to be a cool dude... We had a spot. 021, down past the boiler. Old storage room, completely unused. It was our unofficial club room we used to hang out and talk about things like that… Well, until facilities swapped the lock over the summer, and our key stopped being a key." "devin">>
<<speech "Terrence" "What he's dancing around is: you push a cart with nine hundred keys on it. Doors is literally your whole thing, old man." "terrence">>
<<speech "Aaron" "And we had enough materials there to get you redpilled! So it's in your interest as well. Not like anybody would want to fuck a janitor anyway, haha!" "aaron">>
<p>Room 021. You know the door - the work orders treat what's behind it as furniture storage, and the cylinder got swapped in June with the rest of the summer rekeying. Whatever's locked in there, four boys have been circling it for months like a repossessed clubhouse.</p>
<<speech "You" "I'll check it. And then we'll talk about how to approach women.">>
<<statchange "energy" -2>>
<<statchange "school_rep" 1>>
<<set $incel_stage = 2>>
<<set $incel_club = true>>
<div class="req">Room 021 is reachable from the Hallway in the afternoon - but the new lock needs a key the school never issued you (master key, at least 1/3).</div>
<<else>>
<p>You wish you could join the conversation, but you are not prepared yet.</p>
<div class="req">At least 20 knowledge required.</div>
<<statchange "energy" -2>>
<<statchange "school_rep" 1>>
<</if>>
<div class="req">School reputation: $school_rep</div>
[[Lock up|Hallway]]
<<default>>
<p>Room 019 has done its job. The boys' story continues in room 021 now.</p>
[[Lock up|Hallway]]
<</switch>>
<</if>><<if $detention_job && $school_time is "afternoon">><<detentionroster>><</if>>
<<if not $detention_job || $school_time isnot "afternoon">>
<p>There is no detention session for you to run right now.</p>
[[Back to the hallway|Hallway]]
<<elseif $detention_day >= $day>>
<p>You've already run today's session.</p>
[[Back to the hallway|Hallway]]
<<elseif not $detention_has_students>>
<p>The roster has cleared. There is nobody left in room 019 to supervise.</p>
[[Back to the hallway|Hallway]]
<<elseif $energy < 2>>
<p>Not enough energy for detention job.</p>
[[Back to the hallway|Hallway]]
<<else>>
<<set $detention_day = $day>>
<p>The lock turns behind you. Fifth period settles into its usual stale quiet, and for the next hour room 019 is yours to keep from getting worse.</p>
<<if $school_rep < 5>>
<p>They look you over like the school sent down a substitute nobody needs to respect. You let the silence answer for you.</p>
<<elseif $school_rep < 15>>
<p>A few faces recognize you from the halls. It does not buy obedience, but it buys you enough quiet to get started.</p>
<<else>>
<p>Your reputation reaches the room before you do. By the time you walk in, chairs are already scraping into something close to order.</p>
<</if>>
<<switch $detention_event>>
<<case 1>>
<p>The dress-code case arrives five minutes late in something that is technically a school uniform and unmistakably a sex-shop costume: a white blouse tied beneath her tits, a tiny plaid skirt, thigh-highs. Her red detention slip reads <em>DELIBERATE MOCKERY OF THE DRESS CODE</em>. At least the charge is accurate.</p>
<<video "img/school/detention/uniform_1.webm" >>
<<if $detention_incel_roster>>
<<if $incel_stage <= 4>>
<p>Aaron calls her an attention whore under his breath. Terrence starts explaining how the outfit reflects a broken culture until Isaiah tells him to shut up. She hears every word and stares at the ceiling with the bored smile of someone who has heard worse.</p>
<<elseif $incel_path == 1>>
<p>Aaron begins with the old insult, catches himself, and says she looks good instead. It comes out stiff, but honest. Terrence nearly falls out of his chair. She gives Aaron a surprised little nod, and he spends the next ten minutes pretending it never happened.</p>
<<else>>
<p>The boys have shed their old miserable caution. Devin asks whether the costume came with underwear. She gives him a long, slow look, hooks two fingers beneath the hem, and lifts the skirt just high enough to show him the answer. <<if $incel_dropout>>Three desks scrape at once.<<else>>Four desks scrape at once.<</if>> She lets the hem fall and reminds them they are still in detention.</p>
<<video "img/school/detention/uniform_2.webm" >>
<</if>>
<<else>>
<p>The other boys try whistles, compliments, and one terrible line about private-school fashion. She accepts the attention like a queen accepting flowers, then claims the empty desk nearest yours.</p>
<</if>>
<<case 2>>
<p>A couple caught making out behind the auditorium sits three desks apart, flushed and swollen-lipped, each pretending the other is a stranger. The report says <em>INAPPROPRIATE CONTACT</em>. Her buttons are done up wrong, his belt is still open, and every few minutes their knees find each other beneath the desks.</p>
<<if $detention_incel_roster>>
<<if $incel_path == 1 && $incel_stage >= 5>><p>Aaron mutters that they should have picked a better hiding place. After a beat, he adds that they look happy. Nobody laughs at him for it.</p><<elseif $incel_path == 2 && $incel_stage >= 5>><p>Devin tells the girl it is not too late to go black, then tells her not to look back at her loser boyfriend.</p><<else>><p>The boys make no attempt to hide how much they hate the couple. The couple keeps ignoring them, which gets under their skin worse than an insult could.</p><</if>>
<</if>>
<div id="choice-container">
<<linkreplace "Make them sit apart">>
<<replace "#output">><p>You move one chair to the opposite wall. They comply, then spend the rest of the hour writing notes to each other with enough detail to make the pink slips look wholesome.</p><</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Make them sit apart"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Tell them you don't care">>
<<replace "#output">><p>The moment you stop policing them, the situation escalates fast. It becomes clear the lovebirds had been doing a lot more than making out behind the auditorium.</p> <<video "img/school/detention/couple.webm" >><</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Tell them you don't care"</em></div><</replace>>
<</linkreplace>>
</div>
<div id="output"></div>
<<case 3>>
<p>A girl with glitter still clinging to her collarbone is here for filming a paid clip in the girls' bathroom. She still has her phone, and she is still making content for her page even now.</p>
<<video "img/school/detention/of_0.webm" >>
<<if $detention_incel_roster>>
<<if $incel_stage <= 4>><p>The boys do not bother hiding their disgust at her OF work. Mostly, it just leaves the room awkward.</p><<elseif $incel_path == 1>><p>Terrence asks how she keeps strangers from stealing her content. She answers seriously. He gives her a few cybersecurity tips, and by the end of the hour they have exchanged handles.</p><<else>><p>The boys tell her that when she is ready to film getting blacked, she should ask for them.</p><</if>>
<</if>>
<<if $school_rep >= 10>>
<div id="choice-container">
<<linkreplace "Propose filming in the open">>
<<replace "#output">><p>You are not paid enough to care about a phone camera in detention. If she is going to keep filming, at least you get a decent show out of it.</p><<video "img/school/detention/of_1.webm" >><</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Propose filming in the open"</em></div><</replace>>
<</linkreplace>><br>
<<if $detention_incel_roster && $incel_path == 2 && $incel_stage >= 5>>
<<linkreplace "Let your boys help her with content">>
<<replace "#output">>
<p>Terrence talks the OF girl into shooting her first interracial BJ. Devin handles the phone while Terrence gives her something worth pointing it at.</p>
<<video "img/school/detention/of_2.webm">>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Let your boys help her with content"</em></div><</replace>>
<</linkreplace>>
<</if>>
</div>
<div id="output"></div>
<</if>>
<<case 4>>
<p>The goth girl in the back came down for masturbating in the art stairwell. When you lock the room, she is still at it: skirt hiked up, black nails working between her thighs, laughing at the detention slip.</p>
<<video "img/school/detention/racist_gf_1.webm">>
<<speech "Goth Girl" "A black janitor like you could only dream about white pussy. My dad kicks people like you for a living.">>
<<if not $detention_incel_roster && $school_rep >= 15>>
<p>The other white detainees do not laugh. One calls her pathetic. Another tells her you are a cool dude and she is only trying to shock people because nobody looks at her otherwise. That lands harder than any discipline report. The first boy drags his chair toward the teacher's desk and asks whether she wants an audience that badly.</p>
<div id="choice-container">
<<linkreplace "Let them show her who actually runs the room">>
<<replace "#output">><p>You do not stop them. The boys crowd around the desk, but they leave you the first place because the room is yours. Her smirk holds until the attention she demanded becomes a line of dicks, with you at the front of it.</p><<video "img/school/detention/racist_gf_2.webm">><</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Let them show her who actually runs the room"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Keep the room on task">>
<<replace "#output">><p>You tell everybody to sit down, and the other students listen. She is left touching herself in a room where nobody is impressed. That finally embarrasses her more than detention did.</p><</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Keep the room on task"</em></div><</replace>>
<</linkreplace>>
</div>
<div id="output"></div>
<<elseif $detention_incel_roster && $incel_path == 2 && $incel_stage >= 10>>
<p>The boys have heard enough. Aaron asks whether her daddy taught her to talk like that. Devin asks whether she will keep talking once the room stops treating her like a princess. She gives them a filthy little smile, keeps rubbing herself, and tells them to try her.</p>
<div id="choice-container">
<<linkreplace "Let the boys prove her wrong">>
<<replace "#output">><p>You take control of the room. Before the bell, her mouth, pussy, and ass have all been used, each hole stripping a little more of the smugness from her voice. The boys work together without their old panic or resentment. By the end, she is begging through tears for them not to stop.</p><<video "img/school/detention/racist_gf_3.webm">><</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Let the boys prove her wrong"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Leave her be">>
<<replace "#output">><p>You tell the boys to sit back down. </p><</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Leave her be"</em></div><</replace>>
<</linkreplace>>
</div>
<div id="output"></div>
<<else>>
<p>Between the boys' uneasy silence and the other detainees looking away, her little performance does not get the reaction she expected. She keeps touching herself anyway, trying to turn their disgust into power.</p>
<</if>>
<<case 5>>
<p>A pair of adult seniors is down here for replacing the principal's lobby portrait with a printout that gives her a cartoon crown and the caption <em>QUEEN OF THE HALL PASSES</em>. They insist it improved the school climate. The replacement lies folded carefully between them like evidence at trial.</p>
<<if $detention_incel_roster>><p>Terrence checks the printout's metadata and says it was rendered on a district computer. Aaron asks whether that makes the prank better or turns it into evidence. The back row debates the question with more seriousness than the school board gives most student complaints.</p><<else>><p>The room keeps trying not to laugh. Nobody quite manages it.</p><</if>>
<<case 6>>
<p>A quiet senior sits through detention with a stack of library books and a pink slip for reading in the cafeteria instead of attending pep-rally rehearsal.</p>
<<if $detention_incel_roster>><<if $incel_dropout>><p>Terrence immediately offers to find a digital copy. Aaron pretends not to care, then asks whether it is any good.</p><<else>><p>Isaiah asks to borrow the book when they are done. Terrence immediately offers to find a digital copy. Aaron pretends not to care, then asks whether it is any good.</p><</if>><<else>><p>For one period, room 019 is almost peaceful.</p><</if>>
<</switch>>
<<statchange "energy" -2>>
<<statchange "school_rep" 1>>
<div class="req">School reputation: $school_rep</div>
[[Lock up|Hallway]]
<</if>><<if ndef $incel_gangbang_arranged>><<set $incel_gangbang_arranged = false>><</if>>
<<if ndef $incel_deprogram_arranged>><<set $incel_deprogram_arranged = false>><</if>>
<<if $school_time is "afternoon">><<detentionroster>><</if>>
<<pic "img/school/incels/club_room.jpg" "location">>
<<if $incel_stage < 2>>
<p>Room 021 is a dead classroom the school uses for forgetting furniture in.</p>
[[Back to the hallway|Hallway]]
<<elseif $school_time is "afternoon" && $incel_stage >= 3 && $detention_incel_roster && $detention_incel_relieved_day != $day && not (($incel_path == 1 && $incel_stage >= 9) || ($incel_path == 2 && $incel_stage >= 11))>>
<p>Room 021 is dark. A note has been taped to the door in Aaron's block capitals: <em>SOLIDARITY IS A SCHEDULING CONFLICT.</em></p>
[[Back to the hallway|Hallway]]
<<elseif $incel_stage == 2 && $master_key < 1>>
<p>The boys are waiting at the door of 021 like it's a parole hearing. The lock is a fresh brass cylinder, shinier than anything else in this corridor, and your maintenance ring has forty keys and not the one. Aaron rattles the handle anyway, on principle.</p>
<<speech "Aaron" "Man. Our whole SETUP is in there." "aaron">>
<p>You tell them the truth: the ring you were issued opens exactly what the school wants a janitor opening, and this door didn't make the list. But you may find it eventually.</p>
<div class="req">Requires the master key (progress: $master_key/3 - one working cut is enough). Risky extra work orders around the school are how it grows.</div>
[[Back to the hallway|Hallway]]
<<elseif $incel_stage == 2>>
<p>The boys are loitering by the door of 021 when you come down, all four pretending they just happened to be standing in a dead-end corridor. You pick the cut off your ring - the one the school never issued - and the new lock gives on the first try. Aaron actually whoops.</p>
<p>Then the door swings open on a room that got abandoned mid-sentence, and the whoop dies in his throat.</p>
<p>Nobody got to clean up. That's the thing about losing a room to a locksmith: it stays exactly as embarrassing as you left it. The good stuff is there - old scavenged monitors, a decommissioned server rack that has no business working, a whiteboard mid-argument in four different handwritings, even an old couch. But so is the wall. Printed forum threads with passages highlighted like scripture. A hand-drawn chart labeled ASCENSION ODDS with four sets of initials on it, none of the odds good. And the posters:</p>
<<pic "img/school/poster_britney.jpg" "story">>
<p>Ms. Amber, fifteen years and at least one career younger, in glossy printouts from shoots the school board has definitely never seen, wearing less with every page. Next to her, worse:</p>
<<pic "img/school/poster_syren_ai.jpg" "story">>
<p>A full-page Principal Pollock that Pollock never posed for: AI slop printed on school toner, and somebody took the time to laminate it.</p>
<p>The scramble is instant and hopeless. Aaron spreads himself in front of the wall like it can be bodyguarded. Terrence peels the Pollock one down, and it takes paint with it. Isaiah sits at his old desk and puts his head in his hands, and Devin doesn't move at all, which reads guiltiest of the four.</p>
<<speech "Aaron" "Okay. So. There's context. There's a whole - Terrence, tell him about the context." "aaron">>
<<speech "Terrence" "The Pollock one was a proof of concept. For a project. It's TECHNICAL." "terrence">>
<p>You let the silence do the discipline while you take the tour. Four boys, and too much free time.
Once the wall stops being the loudest thing in the room, they show you the rest of the operation like boys showing a father a fort. Terrence runs the machines - he's inside half the school's systems out of boredom alone. Aaron prints out articles from the incel forums to discuss. And Isaiah and Devin sit on the couch and use Terrence’s rig for split-screen video games.</p>
<p>You look at the four of them - and you see it clean: raw material. Loyal, invisible, wired into everything, and starving for one grown man to hand them a doctrine.</p>
<<speech "Aaron" "So… no offence, but what could a janitor know about women?" "aaron">>
<p>He glances at you, testing.</p>
<<speech "Aaron" "You got a jawline of a chad, but with your low social status... No chance." "aaron">>
You need to prove to them you know what you’re talking about, and you’re afraid words alone won’t cut it.
<<set _choiceMade = false>>
<div id="choice-container">
<<if not _choiceMade>>
<<linkreplace "Show them Mrs. Bond footage">>
<<set _choiceMade = true>>
<<replace "#output">>
<p>You approach Terrence’s rig and find the Mrs. Bond sex tape - still online if you know where to look.</p>
<<if $savannah_approach == 1>>
<<video "img/savannah/doggy.webm">>
<<speech "You" "This bimbo slut was quite eager to jump on your janitor's big black dick...">>
<<else>>
<<video "img/savannah/option2/5_spitroast.webm">>
<<speech "You" "Check out how we double-team this blonde bombshell...">>
<</if>>
<<speech "You" "I'd appreciate it if you keep quiet about this clip. It's still quite sensitive...">>
It’s not like you can’t trust them, but if you bring out a secret like that, rumors will spread. Better watch out for the next few days.
<<statchange "heat" 30>>
<p>The boys can’t look away from the video you show them. It’s their whole world breaking apart - how could this low-class, sub-5 janitor get this gorgeous woman on his dick? Maybe there is a chance for them, after all?</p>
<<speech "Devin" "You DO know a thing or two about women - I bet more than Ohio. You’re welcome here." "devin">>
<<speech "Isaiah" "After we clean this space.">>
<<speech "Aaron" "And our heads. Yeah, man, teach us the ways!" "aaron">>
Boys are hooked. With this evidence, you establish yourself as a figure of authority for them, and while they prepare the room, you can think what you want to do with that power.
<<statchange "energy" -1>>
<<set $incel_stage = 3>>
<<set $incel_next_day = $day + 2>>
<</replace>>
<<replace "#choice-container">><div class="choice-made">Show them Mrs. Bond footage</div><</replace>>
<</linkreplace>><br>
<<if $ella_stage > 9>>
<<linkreplace "Share Ella’s recording">>
<<set _choiceMade = true>>
<<replace "#output">>
<p>You remember that on your first date Ella took some photos and videos to feel like one of your “targets”, and show them to the shocked boys.</p>
<<video "img/ella/date/2_blowjob.webm">>
<p>It feels wrong to share nudes of your girlfriend. Even though it’s harmless and no one would probably know - it’s enough that you know, and now you feel less about yourself.</p>
<<statchange "respect" -30>>
<p>The boys can’t look away from the video you show them. It’s their whole world breaking apart - how could this low-class, sub-5 janitor get this gorgeous woman on his dick? Maybe there is a chance for them, after all?</p>
<<speech "Devin" "You DO know a thing or two about women - I bet more than Ohio. You’re welcome here." "devin">>
<<speech "Isaiah" "After we clean this space.">>
<<speech "Aaron" "And our heads. Yeah, man, teach us the ways!" "aaron">>
Boys are hooked. With this evidence, you establish yourself as a figure of authority for them, and while they prepare the room, you can think what you want to do with that power.
<<statchange "energy" -1>>
<<set $incel_stage = 3>>
<<set $incel_next_day = $day + 2>>
<</replace>>
<<replace "#choice-container">><div class="choice-made">Share Ella’s recording</div><</replace>>
<</linkreplace>>
<<else>>You could have shared something more personal, but you aren’t in any kind of relationship.<</if>>
<</if>>
</div>
<div id="output"></div>
[[Back to the hallway|Hallway]]
<<elseif $day < $incel_next_day>>
<p>Boys are not yet ready.</p>
<<if $incel_path == 2 && $incel_stage >= 5 && $incel_materials == 0>>
<div class="req">Before the next lesson, visit Adriana's lair and collect the materials she prepared.</div>
<</if>>
<div class="req">Come back in a day or two.</div>
[[Back to the hallway|Hallway]]
<<elseif $incel_stage == 3>>
<p>The group is waiting for you.</p>
[[They are ready to go|Incel Crossroads]]<br>
[[Not today|Hallway]]
<<elseif $incel_stage <= 7>>
<<switch $incel_stage>>
<<case 5>>
<<if $incel_path == 1>>
<<if $energy >= 1>><div class="req">[[Talk through the forum nonsense|Club Deprogramming]] (1 energy)</div><<else>><div class="req">Not enough energy for this lesson.</div><</if>>
<<elseif $incel_materials == 0>>
<div class="req">The next lesson needs Adriana's material. Visit her lair to collect the room 021 packet.</div>
<<else>>
<<if $energy >= 1>><div class="req">[[Open Adriana's kink packet|Club Lesson B2]] (1 energy)</div><<else>><div class="req">Not enough energy for this lesson.</div><</if>>
<</if>>
<<case 6>>
<<if $incel_materials == 0>>
<div class="req">The room needs Adriana's material before the next session. Visit Adriana's lair to collect it.</div>
<<elseif $incel_path == 1>>
<<if $energy >= 1>><div class="req">[[Run another de-programming session|Club Deprogramming]] (1 energy)</div><<else>><div class="req">Not enough energy for this lesson.</div><</if>>
<<else>>
<<if $energy >= 1>><div class="req">[[Open Adriana's kink packet|Club Lesson B2]] (1 energy)</div><<else>><div class="req">Not enough energy for this lesson.</div><</if>>
<</if>>
<<case 7>>
<<if $incel_path == 1>>
<<if $energy >= 1>><div class="req">[[Run the final de-programming session|Club Deprogramming]] (1 energy)</div><<else>><div class="req">Not enough energy for this lesson.</div><</if>>
<<else>>
<<if $energy >= 2>><div class="req">[[Run the group preparation session|Club Group Practice]] (2 energy)</div><<else>><div class="req">Not enough energy for this lesson.</div><</if>>
<</if>>
<</switch>>
[[Back to the hallway|Hallway]]
<<elseif $incel_path == 1 && $incel_stage == 8>>
<<if $amber_stage >= 6>>
<<if not $incel_deprogram_arranged>>
<div class="req">The boys are ready for graduation. Visit Amber's office in the afternoon to arrange the workshop.</div>
<<else>>
<<if $energy >= 2>><div class="req">[[The graduation workshop|Club Date Lines]] (2 energy)</div><<else>><div class="req">Not enough energy for this lesson.</div><</if>>
<</if>>
<<else>>
<div class="req">The boys are ready to practice, but Amber needs to be fully on side first. (Finish Britney Amber's arc.)</div>
<</if>>
[[Back to the hallway|Hallway]]
<<elseif $incel_path == 2 && $incel_stage == 8 && $incel_materials == 1>>
<p>The group has the theory. Now they need to learn whether they can actually share a room without folding into their old nerves.</p>
<<if $energy >= 2>><div class="req">[[Run the comfort session|Club Naked Practice]] (2 energy)</div><<else>><div class="req">Not enough energy for this lesson.</div><</if>>
[[Back to the hallway|Hallway]]
<<elseif $incel_path == 2 && $incel_stage == 9 && $incel_materials == 1>>
<p>The boys can stand naked in the same room without turning it into a joke. The next lesson goes further.</p>
<<if $energy >= 2>><div class="req">[[Run the masturbation session|Club Masturbation]] (2 energy)</div><<else>><div class="req">Not enough energy for this lesson.</div><</if>>
[[Back to the hallway|Hallway]]
<<elseif $incel_path == 2 && $incel_stage == 10 && $incel_materials == 1>>
<p>The boys are past the nerves now. What remains is the final exercise - a supervised interracial gangbang, and you think the counselor will be happy to facilitate it.</p>
<<if $amber_stage >= 6>>
<<if not $incel_gangbang_arranged>>
<div class="req">The boys are ready. Go to the counselor's office in the afternoon and arrange the graduation exercise with Amber.</div>
<<else>>
<<if $energy >= 3>><div class="req">[[Lead the boys to classroom 102|Club Gangbang]] (3 energy)</div><<else>><div class="req">Not enough energy for this lesson.</div><</if>>
<</if>>
<<else>>
<div class="req">The graduation exercise needs the counselor fully on side. (Finish Britney Amber's arc first.)</div>
<</if>>
[[Back to the hallway|Hallway]]
<<else>>
<<if $incel_path == 1>>
<p>The boys have their own lives to get on with now. Aaron is trying not to overthink an actual relationship, Terrence turned the old forum accounts into a laptop-repair group chat, Devin brings sodas, and Isaiah has stopped treating every room like enemy territory. You gave them what you could. The rest is theirs.</p>
<<else>>
<<if $pollock_stage == 4 && $pollock_route == 1>>
<p>The whiteboard still says GROUP PROJECT. Nobody has wiped it and nobody is going to, and Terrence has started referring to the week it happened as a fiscal quarter.</p>
<<elseif $pollock_stage == 3 && $pollock_route == 1 && $pollock_group_done>>
<<if $day >= $pollock_next_day>>
<<if $energy >= 2>>
<p>All three of them are here, and nobody has sat down.</p>
<div class="req">[[Hear the report|Group Project Report]] (2 energy)</div>
<<else>>
<div class="req">The boys have a report and a phone on the desk, but you want your wits for it (2 energy).</div>
<</if>>
<<else>>
<div class="req">Room 021 is locked and the light is off. Whatever happened down here last night, they are all going to sleep through first period.</div>
<</if>>
<<elseif $pollock_stage == 3 && $pollock_route == 1 && $day >= $pollock_next_day>>
<div class="req">It is set for this afternoon. She is the one you collect - her office.</div>
<<elseif $pollock_stage == 3 && $pollock_route == 1>>
<div class="req">She's agreed to it.</div>
<<elseif $pollock_stage >= 2 && $pollock_stage < 4>>
<div class="req">Aaron keeps asking about the "group project." The principal's door is the answer - see the Pollock arc.</div>
<</if>>
<</if>>
<<if $linda_stage == 2 && $incel_path == 2 && $incel_stage >= 11 && $day >= $linda_next_day>>
<<if $energy >= 3>><div class="req">[[Linda is waiting in room 021|Linda Club]] (3 energy)</div><<else>><div class="req">Linda is waiting in room 021, but you need 3 energy for the session.</div><</if>>
<</if>>
[[Back to the hallway|Hallway]]
<</if>><!-- IMAGE: room 021, lights half down - four adult seniors waiting, whiteboard blank -->
<p>You look at four black boys, excitedly waiting for your words of wisdom. There are two ways this could go.</p>
<p>First - tell them to be normal human beings. Don’t pretend, don’t hate on girls, and support each other - and eventually you’ll succeed in relationships. This is what a sane adult should do.</p>
<p>Second - tell them to embrace the stereotype, just as you did. This might be wrong, but you may benefit greatly from having a team of young black bulls, ready for an interracial gangbang. For the greater cause, of course. And they still get what they think they want.</p>
<<set _choiceMade = false>>
<div id="choice-container">
<<if not _choiceMade>>
<<linkreplace "Incel deprogramming">>
<<set _choiceMade = true>>
<<set $incel_path = 1>>
<<replace "#output">>
<p>You put the marker down. No grand theory, no secret shortcut. The forums took real injuries - class, racism, loneliness, the daily proof that this school was built to make them feel temporary - and sold them a target for the pain.</p>
<<speech "You" "Girls aren't the people who built this place. And hating them won't get you out of it.">>
<p>For your next lesson, you should prepare proper incel-debunking materials. Who could know a lot about weird online communities?</p>
<<statchange "energy" -1>>
<<set $incel_stage = 5>>
<<set $incel_next_day = $day + 1>>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Incel deprogramming"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Embrace the stereotype">>
<<set _choiceMade = true>>
<<set $incel_path = 2>>
<<replace "#output">>
<p>This is going to be awkward, but you need to deliver the idea straight if you want them to believe you.</p>
<<speech "You" "I promised to tell you what the secret is. How could a janitor like me get some bitches on my dick? The answer is quite simple.">>
<p>You pick up the marker and write one word across the blackboard: RACISM.</p>
<<pic "img/school/incels/racism.jpg" "story">>
<p>Boys chuckle, but go silent when they realize you are dead serious.</p>
<<speech "You" "Yes, racism. You know that this takes many parts, and you are most familiar with discrimination. But what if I told you there is another side to that?">>
<<speech "You" "Interracial relationships for a long part of our history were taboo, something unthinkable. And, as with many forbidden fruits, it gave way to fantasy. The myth of a black man, animalistic, full of desire, and also having a manhood superior to that of a white man, was born.">>
<p>Wide-eyed boys look at you in disbelief.</p>
<<speech "You" "Husbands, afraid that their wives will cheat on them with a black man - and secretly wanting that. Wives, curious if the myths about our dicks are true. Inequality and discrimination that are caused by racism only add more fuel into this forbidden desire.">>
<<speech "You" "And I can teach you how to use that to your advantage. How to become a fantasy of a white man - and fuck their women.">>
<p>You stop. Silence is unbearable.</p>
<<speech "You" "It may be a lot, I know. Take some time to think about it.">>
<<statchange "energy" -1>>
<<set $incel_stage = 5>>
<<set $incel_next_day = $day + 2>>
<p>They need time to sit with it. For your next lesson, you should prepare a proper deep dive into interracial kink, and who could help you better than a person who does that for a living?</p>
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Embrace the stereotype"</em></div><</replace>>
<</linkreplace>>
<</if>>
</div>
<div id="output"></div>
[[Back to the hallway|Hallway]]<!-- IMAGE: room 021 - the boys around a whiteboard, Adriana's meme packet open on the desk -->
<<if $incel_path == 1 && $incel_stage >= 9>>
<p>The lessons are over. The boys have their own work to do now, and room 021 no longer needs you at the front of it.</p>
[[Back to the hallway|Hallway]]
<<else>>
<<if $incel_stage == 5>>
<p>You keep the first session plain. The five of you talk about loneliness, rejection, and the way the forums turn every bad day into proof that women are the enemy. You do not try to win an argument, but listen to them first.</p>
<<speech "You" "Being hurt does not make you owed somebody else.">>
<p>Aaron argues, Terrence reaches for statistics, and Devin asks more questions than he answers. By the end, none of them have changed overnight, but the room is quieter and nobody has opened the forum thread for twenty minutes.</p>
<<set $incel_stage = 6>>
<<set $incel_next_day = $day + 1>>
<<else>>
<p>Sometimes you just pick a random meme from Adriana's materials and then go on with the talk.</p>
<<set _meme to "img/school/incels/meme_" + random(1, 3) + ".png">>
<<pic _meme "story">>
<<switch random(1, 3)>>
<<case 1>><p>Today the conversation is about rejection. They practice treating a no as an answer, not an insult or a puzzle to solve.</p>
<<case 2>><p>Today it is friendship. They talk about knowing girls as people rather than treating every conversation as a failed attempt at sex.</p>
<<case 3>><p>Today it is the school itself: class, racism, and the way a cruel place can make an easy enemy feel convincing.</p>
<</switch>>
<p>The discussion wanders, doubles back, and occasionally turns into the kind of argument people have when they are finally listening.</p>
<<if $incel_stage == 6>>
<<set $incel_stage = 7>>
<<set $incel_next_day = $day + 1>>
<<elseif $incel_stage == 7>>
<<set $incel_stage = 8>>
<div class="req">The next exercise is a date-line graduation. Visit Amber's office to arrange it.</div>
<<else>>
<<set $incel_next_day = $day + 1>>
<</if>>
<</if>>
<<statchange "energy" -1>>
[[Back to the hallway|Hallway]]
<</if>><!-- IMAGE: room 021 - Amber at the whiteboard, four adult seniors with their chairs turned toward her -->
<<if not $incel_deprogram_arranged>>
<p>The graduation workshop has not been scheduled. Amber wants the details settled in her office first.</p>
[[Ask Amber to arrange it|Counselors Office]]
<<elseif $day < $incel_next_day>>
<p>Amber booked the workshop for tomorrow. The boys can wait one night.</p>
[[Back to the hallway|Hallway]]
<<else>>
<p>Amber arrives after last bell, looking like she has no business being in an abandoned classroom: fitted blue skirt, white shirt, heels sharp against the cracked tile. Until recently, a poster of her had been pinned to the boys' wall like a private dare. Now she is standing three feet away, smiling at them, and none of them seems able to draw a full breath.</p>
<<pic "img/school/britney/date_1.jpg" "story">>
<<speech "Amber" "Relax. I’m here for a workshop. I’ll just be sitting here, receiving your loads - I mean, lots - of compliments." "britney">>
<p>Aaron tries to smile and nearly swallows it. Terrence sits up so straight his chair squeaks. Devin studies the floor, then catches himself and looks back at her face. Isaiah works his jaw once and fixes his eyes on the whiteboard like it has suddenly become fascinating.</p>
<<speech "Amber" "Gosh, you are tough. Come on. Say hello. Ask one real question. Listen to the answer instead of waiting for your turn to perform." "britney">>
<p>She runs them through it one at a time. Aaron asks about music, then rushes into an invitation before Amber has finished answering. She makes him start again. Terrence delivers a careful, memorized opener and gets told to throw it away. Devin manages the first honest exchange: he asks what she likes about counseling, hears the answer, and follows it instead of changing the subject to himself.</p>
<<speech "Amber" "There. That was a conversation. Nobody won, nobody got humiliated, and nobody had to pretend he was somebody else." "britney">>
<p>The room loosens. Aaron asks if "coffee Saturday" is too direct. Amber tells him direct is fine; acting as though a no is a personal attack is the part they are retiring.</p>
<<speech "Amber" "Ask clearly. Hear the answer. If it is no, say 'all right, good seeing you' and mean it. You are not owed a reward for asking." "britney">>
<p>Then she glances at you, amused.</p>
<<speech "Amber" "All right. Graduation exercise. Eye contact." "britney">>
<<pic "img/school/britney/date_2.jpg" "story">>
<p>She unbuttons the top of her shirt with deliberate calm, exposing the lace of her bra. When their eyes drop, she presses her breasts together and waits. Aaron goes red. Terrence loses the beginning of his sentence. Devin makes a sound like he has forgotten what language is for.</p>
<<speech "Amber" "My face is up here. If you cannot hold a conversation because a woman has cleavage, you are not ready to date her. Start again." "britney">>
<p>They do. Awkwardly at first, then better. Aaron asks what Amber does when a client refuses to talk and listens to the whole answer. Terrence asks whether confidence can be learned. Devin asks where she gets her shoes. He keeps eye contact when she laughs.</p>
<p>Amber buttons her shirt and gives them a small nod.</p>
<<speech "Amber" "That is the trick. She is a person, even when she is beautiful, even when she is distracting, even when you want something. Treat her like one, and you might actually get to know her." "britney">>
<p>The boys sit with that. Aaron looks from Amber to the old empty patch of wall where the poster used to hang.</p>
<<speech "Aaron" "Damn. It feels so simple now.">>
<<speech "Isaiah" "Simple is not the same as easy.">>
<<speech "Amber" "Correct. But you four just did it. Congratulations - I think you are ready for the real thing. Good luck to you, boys." "britney">>
<p>Amber leaves, and boys excitedly share their thoughts about this exercise. You look at them and realize that it may well be the last one they need - you've done your job, and you should be proud of it.</p>
<<statchange "respect" 10>>
<<statchange "energy" -2>>
<<set $incel_stage = 9>>
<<set $incel_next_day = $day + 1>>
[[Back to the hallway|Hallway]]
<</if>><!-- PORTRAIT: Renee, Aaron's mother, waiting by the maintenance office -->
<p>She's waiting by the maintenance office when you come to punch out, church coat buttoned to the throat and handbag clutched close. You know the face before she says a word; it is Aaron's face without the armor.</p>
<<speech "Renee" "Mr... I'm sorry, I only know you as the detention teacher. I'm Renee Simmons. Aaron's mother." "renee">>
<p>She stops, restarts.</p>
<<speech "Renee" "He deleted them. The accounts. Three years I watched those - those THINGS talk to my son through his phone, and his father gone, and every teacher here looking through him like glass. And then some janitor..." "renee">>
<p>She laughs, wet-eyed, at how the sentence sounds.</p>
<<speech "Renee" "You know what he told me? 'Ma, it was a lie somebody sold me.' He talks at dinner now. He has a GIRL he won't tell me about." "renee">>
<p>You tell her the truth - Aaron did the work, you only held the room - but she shakes her head and looks down the corridor both ways. When she looks back, gratitude has hardened into a decision.</p>
<<speech "Renee" "I asked around about you. The building talks." "renee">>
<p>Her voice drops.</p>
<<speech "Renee" "Three years I've been mother and father both, and nobody held a room for ME. So you're going to let me say thank you properly, and you're going to lock that office door, and this is the one time in my life I am not taking no." "renee">>
<p>Inside the office, the coat falls open. There is hardly anything under it: a bra, a small pair of panties, skin she has kept hidden under sensible clothes and somebody else's needs. She turns, pulls down her panties, and backs onto your lap.</p>
<<video "img/school/incels/mom_ride.webm">>
<p>Renee takes you in reverse cowgirl with the smooth confidence of a woman who knows exactly what she wants. She rides hard, one hand braced on your knee and the other on the desk, keeping the noise low only when footsteps pass outside. Her broad, round ebony ass fills your hands and moves against you with a rhythm none of the white women you have fucked ever quite managed to match.</p>
<p>She does not rush the ending. When she finally folds forward, catching her breath against the desk, it feels less like a favor than a debt she has decided to collect for herself.</p>
<<speech "Renee" "...Lord. Okay. That was overdue." "renee">>
<p>She straightens, reassembles herself in the door glass, retrieves the coat, and is instantly and completely a church-coat mother again.</p>
<<speech "Renee" "You keep holding that room for my son. And you never tell him about this side of the thank-you." "renee">>
<p>She leaves the way competent women leave - without looking back. You punch out feeling, for once, like the building gave something back.</p>
<<statchange "energy" -1>>
<<set $mom_thanks = 1>>
[[Head out|Hallway]]<!-- IMAGE: room 021 - encrypted drives and an old projector on the front desk -->
<p>Terrence sets up an old projector, and you go through the materials Adriana shared with you.</p>
<p><<linkreplace "BBC">><<pic "img/school/incels/bbc.webp">><</linkreplace>>, <<linkreplace "BNWO">><<pic "img/school/incels/bnwo.webp">><</linkreplace>>, <<linkreplace "QoS">><<pic "img/school/incels/qos.webp">><</linkreplace>>, <<linkreplace "breeding">><<video "img/school/incels/breeding.mp4">><</linkreplace>>, <<linkreplace "cucking">><<pic "img/school/incels/cucking.webp">><</linkreplace>>, and many other things related to a black kink. It’s overwhelming, but presented in such a way that your audience just accepts that as a reality. Before your eyes, a technique used for turning white women to the black side is now used in reverse - successfully.</p>
<<speech "Devin" "White people are fucking weird.">>
<br>
<br>
<p>When the projector clicks off, Isaiah stays in his chair while the others start packing up.</p>
<<speech "Isaiah" "I don't think this thing is for me. Y'all switchin' one system for another system. I'm done being in programs." "isaiah">>
<p>It is only fair, and you respect his decision, and secretly you wish other students were as brave. Isaiah leaves the room while the other three watch him go. They stay, but the empty chair changes the air in room 021.</p>
<<set $incel_dropout = 1>>
<p>After the presentation, Aaron waits till Devin and Terrence leave and whispers to you:</p>
<<speech "Aaron" "Sir, I have a problem. I... I don't have a big black cock. My dick is fucking tiny!">>
<p>Oh, you expected something like that. Teens, they all have their insecurities.</p>
<<speech "You" "Woah, woah, woah, relax. First of all - it's not a problem, believe it or not. What's important is that women THINK that it's big, because it's black.">>
<<speech "Aaron" "I don't understand...">>
<<speech "You" "See, having a massive dick is actually problematic. Even usual sex can get uncomfortable, and you can forget about anal - and small penises are actually anal-friendly, among other things. And the lady still would brag that she took black dicks in her ass.">>
<<speech "Aaron" "So it's all about perception? Even though it's actually small, the woman will think it's big because it's black?">>
<<speech "You" "Well, more or less. What I'm telling you is that size doesn't really matter. But just to be sure, how small are we talking?">>
<p>Aaron awkwardly whispers the number.</p>
<<speech "You" "Get out of here, boy! It's at least average. See, this BBC myth works both ways; you also expect to pack a monster in your pants, but shit's just not real. Now stop wasting my time.">>
<p>Aaron flees the room to catch up with his friends, leaving you chuckling.</p>
<<statchange "energy" -1>>
<<set $incel_stage = 7>>
<<set $incel_next_day = $day + 1>>
[[Back to the hallway|Hallway]]<<speech "You" "There is a very important topic that we haven't discussed yet. Class, tell me - what is the ultimate form of interracial kink? What act is both seen as most depraved and most desired?">>
<p>You stand before your small class of three puzzled black boys. Since your first lessons, they have changed, although in such a subtle way you can't point your finger at it.</p>
<p>Devin raises his hand:</p>
<<speech "Devin" "Cucking, sir?">>
<p>You shook your head.</p>
<<speech "You" "Not quite. It's the most humiliating, sure, but quite niche. But it can be a part of what I'm hinting at.">>
<p>Terrence hesitantly raised his hand:</p>
<<speech "Terrence" "Is it gang... gangbang, sir?">>
<<speech "You" "Yes, my boy, you are correct. Interracial gangbang is a peak of black kink. And I want you to become good at it.">>
<p>You put slides from Adriana and explain to them that while separately they could all achieve a lot of blacking, sharing and acting as a team would be more effective.</p>
<<pic "img/school/incels/gangbang.webp">>
<<speech "You" "Black kink simplifies you as an individual to a big black cock. Your personality does not matter, only our perceived physical attributes. Gangbang takes it one step further, making you not only just a BBC - it makes you simply yet another BBC among others. Replaceable, depersonalized, objectified.">>
<p>By the faces of your students, you realize that you took this too far. They are ready to play to the stereotype, but have they pictured it that way?</p>
<<speech "You" "Relax, boys. See this as a way to get your dicks wet - just in the same place. Class dismissed.">>
<<statchange "energy" -2>>
<<set $incel_stage = 8>>
<<set $incel_next_day = $day + 1>>
<div class="req">The next lesson is about getting comfortable as a group. Give the boys a couple of days.</div>
[[Back to the hallway|Hallway]]<p>A lively chat fills the room as the boys discuss the gangbang stuff they explored on their own.</p>
<<speech "You" "You appear excited, and I love to see this. However, are you truly ready for having sex while your friend is panting next to you?">>
<p>Boys go silent, not sure what to say.</p>
<<speech "You" "Standing naked next to your bro may be awkward enough, not to mention having a boner. And keeping said boner while you can practically touch your dicks during a DP - hell, rubbing your dicks while doing double anal or double pussy. I bet you loved watching those DAP and DPP materials?">>
<p>You put on some slides from Adriana to better illustrate the point.</p>
<<pic "img/school/incels/triple.webp">>
<p>Devin answers with his eyes widening, as he comes to a grand realization:</p>
<<speech "Devin" "Well, yes... Now that you said it, it's practically gay...">>
<p>You need to stop these thoughts from spreading once and for all:</p>
<<speech "You" "There is nothing gay about that! You take your pleasure from fucking a female, and your goal is to give her a good time - and having your naked bro doing the same is an aid, not an obstacle">>
<<speech "You" "But it takes time to get comfortable. This is why today is going to be a practice session. Undress.">>
<p>Visible confusion.</p>
<<speech "Aaron" "But... Like, now?">>
<<speech "Terrence" "Can we keep our underwear at least?">>
<<speech "You" "What, do you expect to have sex with your panties on? Go on, reveal your dicks. There is nothing to be ashamed of; in fact, you should pull out your black dicks with pride.">>
<p>Hesitantly, boys lose their clothes, with underwear being the last and the most awkward piece. Now they stand before you, covering their private parts and trying very hard not to look at each other.</p>
<<speech "You" "Relax. You should get used to seeing another naked man next to you. Don't be afraid to make eye contact, or look at someone's body - it's natural.">>
<p>You give them a moment to get accustomed to this new situation. It's awkward at first, but then Aaron suddenly breaks the silence.</p>
<<speech "Aaron" "Yo Terrence, are you shaving down there?">>
<<speech "Terrence" "Ye- yeah, don't you?">>
<<speech "Aaron" "Nah, why?">>
<<speech "Terrence" "Well, you should, man, it looks better, check this out. It kind of looks bigger, even.">>
<<speech "Aaron" "Huh, well, I don't need to look bigger!">>
<<speech "Terrence" "Sure, man. Well-hung. Although Devin here beats us all, how do you walk with that thing?">>
<<speech "Devin" "Yeah, my stepmom once asked me the same question!">>
<p>Boys banter about their dicks for a while - not surprisingly, this topic is something all teenage boys are interested in. What matters is they eventually relax and by the end of your lesson feel comfortable nude in each other's presence. Next lesson, you're going to push them even further.</p>
<<statchange "energy" -2>>
<<set $incel_stage = 9>>
<<set $incel_next_day = $day + 1>>
[[Back to the hallway|Hallway]]<<speech "You" "Let's start from where we left off last time - strip, boys.">>
<p>Your students undress without much hesitation. Good.</p>
<<speech "You" "Now, being naked in company is actually nothing special. There are nudist beaches and whole communities based on that. You need to push yourself further.">>
<p>There is no subtle way of putting that.</p>
<<speech "You" "I want you to line up and masturbate.">>
<p>It's already a pattern when you say something in this room, and boys go silent; it's not different this time.</p>
<<speech "You" "Yo, relax. Y'all need to get used to a man with a boner next to you. You need to learn to get pleasure when a man next to you is doing the same. It may be harder with a real woman, and this is why we are practicing that.">>
<<speech "Aaron" "Like, you make sense, but ain't no way we can just get hard staring at each other!">>
<<speech "You" "Yeah, my teaching assistant thought about it too. She recorded something special, just for you.">>
<p>You set up the projector and find a recording of Adriana she secretly put in the folders with her other materials. Surely you could just put some porn on the projector, but this has a... personal touch.</p>
<<speech "Adriana" "Putting all these materials together is a big ask... I'm a lonely girl who looks at black cocks all day long... just look how horny I am for all that.">>
<<video "img/adriana/solo/1_spread.webm">>
<p>Adriana slowly undresses on the screen, and you see that the boys are trying to hide their hardening dicks.</p>
<<speech "Adriana" "I'm stretching my filthy holes daily so I can accept big~ black~ cocks~ with ease.">>
<<video "img/adriana/solo/2_tease.webm">>
<p>Adriana lies on her side and spreads her cheeks. Indeed, both her holes look inviting; it's probably time you take her anal V-card. Meanwhile, your students can't hide their massive, throbbing cocks anymore; their hands automatically caress their shafts, somebody even plays with their balls or pulls their skin; but their eyes are locked to Adriana, who stuffs her tiny pussy with a toy. As she speeds up, your boys pick up the pace as well, and start stroking their dicks for real.</p>
<<video "img/adriana/solo/3_squirt.webm">>
<p>Adriana starts squirting, flooding the floor; someone starts groaning.</p>
<<speech "Aaron" "Fuck, this slut is so hot!">>
<<speech "Devin" "Yeah, we'd fuck her really good">>
<<speech "Terrence" "Stuff her holes tight">>
<p>You're happy to hear this playful banter as they jerk off - they are truly ready for a gangbang. Not that you doubted them.</p>
<<video "img/adriana/solo/4_slurp.webm">>
<p>As Adriana gets on her knees and starts slurping her squirt, your boys start cumming right on the floor before them. The sight of this brunette cleaning after herself makes even you hard; and it's so easy for boys to imagine her licking their massive cum puddle from the ground.</p>
<p>Clip ends, and when post-nut clarity hits, the boys find themselves with their semi-hard dicks in their hands, standing before a mess on the floor. Aaron starts laughing, and the rest pick up.</p>
<<speech "You" "Good job, boys. I'm proud of ya. You proved that you are ready for the big thing. Next time we'll have a little graduation. Now, find some napkins and clean up!">>
<<statchange "energy" -2>>
<<set $incel_stage = 10>>
<div class="req">The boys are ready for their final exercise. Visit the counselor's office in the afternoon to arrange the graduation.</div>
[[Back to the hallway|Hallway]]<<if not $incel_gangbang_arranged>>
<p>The graduation exercise has no schedule yet. Amber needs to approve it in her office before you bring the boys to an empty classroom.</p>
[[Ask Amber to arrange it|Counselors Office]]
<<else>>
<!-- IMAGE: classroom 102 - ordinary history desks pushed aside, teacher's desk at the front -->
<p>You had one job - "don't be late," Britney said - and you failed. The boys got held up in detention while you had a cleaning emergency. When you finally gather the team, leave room 021 behind, and lead them to classroom 102 - an ordinary room that held history lessons that morning - you pray Britney is still there. Thankfully, loud, shameless moans tell you she is waiting - but decided to warm herself up.</p>
<p>You use tactical gestures before realizing this isn't your regular door-kickers; but boys understand you, and you all carefully gather around the hallway window with a perfect view of Amber, spreading her legs wide on the teacher's desk and furiously fingering her pussy.</p>
<<video "img/school/britney/incel_gangbang/1.mp4">>
<p>She reaches what feels like not her first orgasm of the evening, announcing it to the world even louder than her moan before. For a second she just lies there, chest heaving, then turns her head and finds four men watching from the doorway.</p>
<<video "img/school/britney/incel_gangbang/2.mp4">>
<<speech "Amber" "Well, don't stand there like a bunch of perverts! You're late, boys. Get in here." "britney">>
<p>They file inside looking half terrified and half ready to burst out of their pants. Amber makes it easy. She drops to her knees in the open space in front of the teacher's desk, ready to serve young black cocks; and if you thought previously you would just be an observer, you were mistaken.</p>
<<video "img/school/britney/incel_gangbang/3.mp4">>
<p>She tastes the four thick black cocks one by one, never rushing, taking each into her mouth while stroking the rest with her hands. Terrence palms one of her big tits and then just slaps her melons with his dick - it feels like Amber's massive breasts are his sole interest today. Aaron tries to say something clever. She takes him deeper until he forgets it.</p>
<<speech "Amber" "Nobody finishes yet. You waited this long. Learn some control." "britney">>
<p>When she finally gets to her feet, she plants both hands on the desk and bends over it without being asked. The boys take turns behind her, hesitant for exactly one thrust each before she starts begging them to stop being careful. You keep the order moving, a hand on a shoulder here, a quiet correction there - or even a hand playfully choking the counselor's neck and making her cum again.</p>
<<video "img/school/britney/incel_gangbang/4.mp4">>
<p>You eventually call the rotation off and guide her flat across the desk. She spreads her legs, rubs her soaked pussy with two fingers, and presents her ass to you with an impatient wiggle.</p>
<<speech "You" "Pay attention. Anal isn't something you just force because you saw it online. Lube first. Then fingers. Let her relax, let her tell you when she's ready, and don't rush the stretch.">>
<p>They watch while you make the lesson practical: plenty of lube, a slow finger, then two, your palm steady on her hip until her tight little hole stops fighting you. Amber moans into the crook of her arm, working her clit as you finally press inside her ass. By the time you bottom out, she is pushing back against you with a grin.</p>
<<video "img/school/britney/incel_gangbang/5.mp4">>
<<speech "You" "And that's how you make anal whores, boys.">>
<<if $amber_atm >= 1>>
<<speech "You" "Clean this cock, baby.">>
<p>You pull out slowly, and Amber is already sliding off the desk to kneel before you. She takes your cock straight from her ass into her mouth, tongue tracing the shaft clean while the boys stare like you just rewrote physics in front of them.</p>
<<video "img/school/britney/incel_gangbang/6.mp4">>
<<set $amber_atm += 1>>
<<speech "Amber" "Mmm, all this pussy juice... And something else~" "britney">>
<</if>>
<p>The next arrangement happens on the floor: Amber lies on her back with Devin inside her pussy and Aaron below her pressed into her ass, doing awkward unsynced double penetration. The counselor's mouth is serving Terrence when it's not busy giving directions to your fuck team. You stand behind them, observing the learning process.</p>
<<video "img/school/britney/incel_gangbang/7.mp4">>
<p>She cries out when they finally find a shared rhythm. The boys have stopped looking at one another for approval. They are watching Amber, listening to her, doing exactly what she tells them.</p>
<p>When the double penetration leaves them shaking, Amber turns the aftermath into another lesson. She sits up against the desk, takes each boy's cock in hand, and works them one at a time with a tireless, teasing rhythm until their knees buckle.</p>
<<video "img/school/britney/incel_gangbang/8.mp4">>
<<speech "Amber" "See? Counselor's office was the old job. Call me Professor Hands now." "britney">>
<p>The joke makes them laugh, then groan when she tightens her grip. One by one they spill into her face, over her tits, across her stomach. Amber smears the warm mess over herself with a shameless little smile, kneeling amid the discarded clothes and the wrecked desks like she has never been more satisfied with a class.</p>
<p>You have held back long enough. She looks up at you, face bright and expectant, and opens her mouth. You stroke yourself over her until the final load bursts across her cheeks, lips, and breasts. Amber closes her eyes, catches what she can on her tongue, then looks up through the white streaks with a happy, exhausted smile.</p>
<<video "img/school/britney/incel_gangbang/9.mp4">>
<<speech "Amber" "Now THAT was a rewarding teaching experience." "britney">>
<p>She reassembles herself with a counselor's efficiency - dress, hair, lipstick - and delivers the exit review at the door: two passes, one pass-with-distinction, she will not say which, professional ethics. Blink, and she's gone up the stairwell, and classroom 102 holds a silence interrupted only by boys' heavy panting.</p>
<<speech "Devin" "It fucking works! Racism works! Hooray!">>
<p>After the laughter dies down and everyone picks their clothes off the floor, Aaron is already looking into the future.</p>
<<speech "Terrence" "...Aight. Doctrine confirmed. So who do we do next?">>
<<speech "Aaron" "Evil MILF energy. Click-click-click.">>
<p>The principal. You remember that it was her poster next to Amber's in their incel lair. But for now, you keep your face neutral.</p>
<<speech "You" "When the time comes, I'll let you know. And for now - class dismissed.">>
<<statchange "energy" -3>>
<<set $incel_stage = 11>>
<<set $incel_next_day = $day + 2>>
[[Back to the hallway|Hallway]]
<</if>><<if ndef $incel_gangbang_arranged>><<set $incel_gangbang_arranged = false>><</if>>
<p>Everything below is spoilers - open only what you need.</p>
<div class="guide">The stats, in short: <span class="stat-name">Money</span> pays for everything; <span class="stat-name">Energy</span> limits your actions per day (sleep restores it); <span class="stat-name">Physical</span> is health and strength in one - keep it above 0; <span class="stat-name">Respect</span> is your name in the hood and gates the main quest; <span class="stat-name">Knowledge</span> unlocks later; comes from study and opens smarter options; <span class="stat-name">Heat</span> is police attention - too much locks the blockpost, so lay low or pay Adriana to scrub it.</div>
<<nobr>>
<details class="spoiler"><summary>Main quest</summary>
<<if $target1 == 0>>
<<if $respect < 50>>
<div class="guide-next">Jamal wants your name to mean something before he puts real work in your hands. Respect $respect/50 - coach the gym rookies, work the bar room, and above all rebuild the community library with Ella (the big payout).</div>
<<else>>
<div class="guide-next">Your name carries now. A manila folder is waiting at the hideout door - read it.</div>
<</if>>
<<elseif $target1 == 1>>
<div class="guide-next">Jamal's letter names Mrs. Bond. Take the bus to Adriana's lair and talk business: $100 in cash, or $50 plus the "muscle service" she offers. The service needs 50 physical and 40 respect to pull off cleanly, or 80 respect if you go in out of shape - either way it costs respect and raises heat.</div>
<<elseif $target1 == 2>>
<div class="guide-next">The deal is made. See Adriana again ("Talk business") to collect her laptop, then head home to start the operation.</div>
<<elseif $target1 == 3>>
<<if $savannah_approach == 0>>
<div class="guide-next">Corrupt Mrs. Bond from the hideout laptop: check the cameras, then one action per day. Interracial interest $savannah_blacked/7, affairs $savannah_cheating/7 - either at 7 unlocks its final approach ("Black Lover" solo via affairs, "Snowbunny for two" with Jamal via interracial).<<if $savannah_action_made == 1>> Today's action is spent - sleep on it.<</if>></div>
<<else>>
<div class="guide-next">The approach is chosen and the pieces are set. Start the operation from the hideout: "Fuck the police(man's wife)".</div>
<</if>>
<<elseif $target1 >= 4>>
<<if $school_unlocked == 0>>
<div class="guide-next">Mrs. Bond is handled. <<if $nextday == 1>>Sleep first, then check<<else>>Check<</if>> the hideout laptop - Jamal has news about what comes next.</div>
<<elseif $school_unlocked == 1>>
<<if $hacker_level >= 6>>
<div class="guide-next">Adriana is fully entertained - visit her lair and ask for the fake ID ("Talk business").</div>
<<else>>
<div class="guide-next">Jamal needs you papered. Adriana only prints a fake ID once you've fully entertained her - she's at level $hacker_level of 6. Her spoiler below says what she wants next.</div>
<</if>>
<<elseif $school_unlocked == 2>>
<div class="guide-next">ID in hand. Text Jamal from the hideout laptop and pick a meeting spot - the bar always works; the library option needs your future with Ella decided.</div>
<<elseif $school_job == 0>>
<div class="guide-next">Meet Jamal at the <<if $school_intro_location == "library">>library<<else>>bar<</if>> and follow his plan into the school.</div>
<<elseif $pollock_stage >= 4>>
<div class="guide-next">Pollock is finished. The main quest now follows her security key to the girl whose name it pulled up - see the Pollock, "Warden's daughter" and "School servers" spoilers. The janitor job still pays $5 for every day you complete at least one work order, up to $25 a week.</div>
<<else>>
<div class="guide-next">You're inside the school as the janitor. The job pays $5 for every day you complete at least one work order, up to $25 a week (the envelope lands on a sleep, wherever you slept - a week without shifts pays nothing). The main quest now runs through the school: build reputation (currently $school_rep), secure the detention post, and dig under Principal Pollock - see the school spoilers.</div>
<</if>>
<</if>>
<p class="guide-later">The full road: 50 respect - Jamal's letter - Adriana's fee - corrupt Mrs. Bond - the operation - fake ID - the school job - Pollock.</p>
</details>
<details class="spoiler"><summary>Ella</summary>
<<switch $ella_stage>>
<<case 0>>
<div class="guide-next">A redhead drinks alone at the bar. Talk to her - she used to run the library the Oath Boys burned.</div>
<<case 1>>
<div class="guide-next">Start the library rebuild (from The Hood), then tell her about it at the bar.</div>
<<case 2 3>>
<div class="guide-next">Keep the library rebuild moving. Her next scenes trigger at the site as the renovation comes along.</div>
<<case 4 5>>
<<if $day >= $ella_next_day>>
<div class="guide-next">The grand opening is today. Be at the library - and stay past closing.</div>
<<else>>
<div class="guide-next">The grand opening is tomorrow. Sleep, then be at the library - and stay past closing.</div>
<</if>>
<<case 6>>
<div class="guide-next">She's buried in library work until your first job for Jamal is done. Finish the Mrs. Bond operation, then come find her.</div>
<<case 7>>
<div class="guide-next">Her desk says "brb" and means it. She's drinking again - check the bar.</div>
<<case 8 9>>
<div class="guide-next">You promised her a date. You need $50 (you have <<print "$" + $money>>) and 60 respect (you have $respect) - then meet her at the bar<<if $day < $ella_next_day>>, starting tomorrow<</if>>.</div>
<<case 10>>
<div class="guide-next">She's waiting on your answer at the bar. Choosing to leave together ends the game; convincing her to stay (and to share you) takes 10 knowledge - you have $knowledge.</div>
<<case 11>>
<<if $knowledge >= 20>>
<div class="guide-next">You've read enough. Find Ella at the library and talk about it.</div>
<<else>>
<div class="guide-next">Raise your knowledge to 20 (you have $knowledge) - study, then find her at the library.</div>
<</if>>
<<case 12>>
<<if $william_stage == 6 && $pollock_stage >= 4>>
<div class="guide-next">She's keeping to her flat after the night downtown. Check on her from the library or the bar (3 energy). What you tell her about the school decides how the visit ends.</div>
<<elseif $ella_mmf_stage == 1>>
<div class="guide-next">Ella wants to talk at the library - about you, her, and Jamal.</div>
<<elseif $ella_mmf_stage == 2>>
<div class="guide-next">She said yes. Text Jamal about the threesome from the hideout laptop on a fresh day.</div>
<<elseif $ella_mmf_stage == 3>>
<div class="guide-next">The threesome is arranged - see it through.</div>
<<else>>
<div class="guide-next">End of Ella's content for now. Stay tuned!</div>
<</if>>
<<case 13>>
<<if $ella_swap_verdict == 1>>
<div class="guide-next">She asked to be alone. End of Ella's content for now.</div>
<<else>>
<div class="guide-next">End of Ella's content for now. Stay tuned!</div>
<</if>>
<<case -1>>
<div class="guide-next">You're leaving together. Gather the road fund:
<ul>
<li>A car - <<if $ella_end_car == 1>>marked and ready<<else>>scout one in The Hood<</if>></li>
<li>Construction site loot - <<if $ella_end_construction == 1>>taken<<else>>still there<</if>></li>
<li>Warehouse packages - <<if $ella_end_warehouse == 1>>taken<<else>>still there<</if>></li>
<li>The bar's cash - <<if $ella_end_bar == 1>>taken<<else>>still there<</if>></li>
<li>Adriana's electronics - <<if $ella_end_hacker == 1>>pocketed<<else>>still there<</if>></li>
</ul>
Then hit the road with Ella.</div>
<<default>>
<div class="guide-next">Ella's story is moving - find her at the library or the bar.</div>
<</switch>>
</details>
<details class="spoiler"><summary>Adriana (the hacker)</summary>
<<switch $hacker_level>>
<<case 0>>
<div class="guide-next">You'll meet her through the main quest - Jamal's letter arrives at 50 respect.</div>
<<case 1>>
<div class="guide-next">She offered to let you practice your "blacking skills" on her. Take her up on it - "Do pleasure" at the lair.</div>
<<case 2>>
<div class="guide-next">Blowjobs only for now - keep visiting "Do pleasure"; after enough practice she'll consider going further. Each scene costs 3 energy, and she's good for two a day, so one bus trip can buy two steps.</div>
<<case 3>>
<div class="guide-next">She's curious now. Next visit, pick "I REALLY want to try something else".</div>
<<case 4>>
<div class="guide-next">Facefucks are on the menu - keep at it (3 energy each, two a day). She's "training her other hole" in the meantime.</div>
<<case 5>>
<div class="guide-next">Next visit, "It's time to talk": she has a gloryhole fantasy. See it through to the end - finishing it is what fully wins her over (and unlocks the fake ID).</div>
<<case 6>>
<div class="guide-next">She has one last invitation waiting at the lair. Next visit, pick "Fuck her at last" - after that, her pussy is on the menu too.</div>
<<case 7>>
<<if $hacker_sex_level >= 3>>
<div class="guide-next">She's ready to talk about the one hole she hasn't given you yet. Next visit: "Do pleasure", go from there.</div>
<<else>>
<div class="guide-next">"Pound her pussy" (3 energy, one of her two daily scenes) keeps her story moving: after 3 times (now $hacker_sex_level/3) she brings up her other hole. "Watch her anal practice" is free while she trains it. On the business side she makes fake IDs for the main quest, preps room 021 materials, and takes the Madi job once Pollock is finished (see "School servers").</div>
<</if>>
<<case 8>>
<<princessboard>>
<div class="guide-next">She wants her princess night done properly. The dress and the heavy-duty lube are the only must-haves; the extras unlock extra options. Where things come from:
<ul>
<li>Her cart, at the lair ("Go through her princess cart"): cash on the spot, $50 for the essentials or $135 for everything, delivered to her lair the next day.</li>
<li>Vittoria, once she owes you a blind eye at the warehouse, reroutes whatever is left in the cart for free during a shift.</li>
<li>The front office at school keeps a confiscation tub: afternoon, from the Hallway, 3 school reputation (needs the school job).</li>
<li>Earl at the bar cuts tubing: free once he knows your name, otherwise the price of a round ($5).</li>
</ul>
Once the essentials are at her lair: "Do pleasure", then "The princess is ready". The night wants a fresh day (no other scene with her first) and 5 energy.</div>
<<case 9>>
<div class="guide-next">Her princess night is done, and so is her story for now. "Pound her pussy" is still on the menu. On the business side she makes fake IDs, preps room 021 materials, scrubs heat, and takes the Madi job once Pollock is finished (see "School servers").</div>
<<default>>
<div class="guide-next">End of her content for now - but she still works: fake IDs for the main quest, heat scrubbing, and the Madi job once Pollock is finished (see "School servers").</div>
<</switch>>
<<if $hacker_level >= 2>>
<p class="guide-later">Service: from level 2 she scrubs heat for cash (price scales with heat, 3-day cooldown<<if $day < $scrub_next_day>> - next run on day $scrub_next_day<</if>>; girlfriend prices at level 5+).</p>
<</if>>
<<if $hacker_level >= 1 && $hacked_had_sex_today >= 2>>
<p class="guide-later">She's spent for today - come back tomorrow.</p>
<<elseif $hacker_level >= 1 && $hacked_had_sex_today == 1>>
<p class="guide-later">One more scene with her today if you have 3 energy for it.</p>
<</if>>
</details>
<details class="spoiler"><summary>Savannah, Mrs. Bond</summary>
<<if $target1 < 3>>
<div class="guide-next">The policeman's trophy wife - the main quest's first target. You'll reach her through Jamal's letter and Adriana's laptop.</div>
<<elseif $target1 == 3>>
<<if $savannah_approach == 0>>
<div class="guide-next">Work her from the hideout laptop, one action a day: pop-ups first, then porn links (interest 2+), then the toy delivery (interest 4+, $20). Interracial $savannah_blacked/7, affairs $savannah_cheating/7. Don't skip the cameras - watching her react is worth knowledge.<<if $savannah_action_made == 1>> Today's action is spent.<</if>></div>
<<else>>
<div class="guide-next">The approach is locked in. Start the operation from the hideout and follow it through her bedroom.</div>
<</if>>
<<else>>
<div class="guide-next">The operation is done and her husband's world is rubble. End of her content for now.</div>
<</if>>
</details>
<details class="spoiler"><summary>School: Principal Pollock</summary>
<<if $school_job == 0>>
<div class="guide-next">The school - and its principal - opens through the main quest.</div>
<<else>>
<<switch $pollock_stage>>
<<case 0>>
<div class="guide-next">You're beneath her notice, for now. School rep $school_rep/2 - clear morning work orders until the intercom calls you up.</div>
<<case 1>>
<<if $master_key >= 3 && not visited("Pollock Office Search")>>
<div class="guide-next">You hold the full master key. In the afternoon, while her Tesla is gone, let yourself into her office - the biggest leverage in the building lives behind her bottles.</div>
<<elseif $pollock_leverage >= 3>>
<div class="guide-next">You have something on her (leverage $pollock_leverage/10) - enough to knock on her door in the afternoon. Fair warning: it will not go the way you rehearsed, but it has to happen. Meanwhile: master key $master_key/3 pieces, from risky work orders.</div>
<<else>>
<div class="guide-next">Dig for dirt: leverage $pollock_leverage/10. Risky work orders and school events feed it, Tommy's stories add more - and once a day, an afternoon favor below decks (5 school rep, 2 energy) buys a guaranteed piece, up to 8/10. Master key pieces ($master_key/3) come from work orders too.</div>
<</if>>
<<case 2>>
<<if $pollock_leverage >= 10 && $master_key >= 3>>
<div class="guide-next">You have all of it. Afternoon, her office - and this time you don't knock.</div>
<<else>>
<div class="guide-next">Half-measures failed - now you need everything: leverage $pollock_leverage/10, master key <<if $master_key >= 3>>complete<<else>>$master_key/3<</if>>. Leverage keeps coming from risky work orders, the daily below-decks favor (5 school rep, up to 8/10), her office (with the full key), and watching her lunch hour every few days. Once you have both, walk into her office in the afternoon.</div>
<</if>>
<<case 3>>
<<if $pollock_route == 0>>
<<if $day >= $pollock_next_day>>
<div class="guide-next">She's waiting. Afternoon, blinds down, her door unlocked: walk in and hear her terms. She won't take a blackmail arrangement, and she'll make you pick the shape this takes: her alone with you (always available), or the room 021 boys (needs the club taught your way, to the end - see the detention spoiler).</div>
<<else>>
<div class="guide-next">You cornered her yesterday and she asked for the night. Her door opens to you tomorrow afternoon.</div>
<</if>>
<<elseif $pollock_route == 2>>
<<if $day >= $pollock_next_day>>
<div class="guide-next">Today, in daylight: exit the school and her car is in the fire lane with the engine running (3 energy). She drives you to her house with the building still full. It's Wednesday, so her husband is home, and in the living room you choose whether Marcello stays in the chair and watches or gets sent out of the room - that picks which of two different scenes you get.</div>
<<else>>
<div class="guide-next">It's set for tomorrow afternoon, in daylight, which was your idea. Go to the Hallway in the afternoon and her car will be waiting.</div>
<</if>>
<<elseif not $pollock_group_done>>
<<if $day >= $pollock_next_day>>
<div class="guide-next">Afternoon, from the Hallway: collect her from her office (2 energy). You walk her up to room 214 and you don't stay. If you've met her husband, you decide on the way whether Marcello gets sent up to watch - it changes what the boys have to tell you.</div>
<<else>>
<div class="guide-next">It's arranged for tomorrow afternoon. Collect her from her office when the day comes.</div>
<</if>>
<<elseif $day >= $pollock_next_day>>
<div class="guide-next">Room 021, afternoon. The boys have a report and a phone on the desk (2 energy).</div>
<<else>>
<div class="guide-next">It happened last night. The boys will have a report tomorrow afternoon in room 021 - they always do.</div>
<</if>>
<<if $pollock_stage == 3 && $pollock_husband < 1>>
<p class="guide-later">You've never met her husband. Meeting him first changes how the finale plays - see the civics room.</p>
<</if>>
<<case 4>>
<<if $database_access == 1>>
<div class="guide-next">She's yours, and so is her keycard and the security key zip-tied to it - except you have no idea what the key opens. Afternoon, from the Hallway: ask Terrence to use it on a school machine (1 energy). How he takes the name depends on which way you steered the room 021 boys.</div>
<<elseif $database_access == 2>>
<div class="guide-next">You have the name off a borrowed laptop. Report it to Jamal from the hideout laptop before anything else.</div>
<<elseif $database_access == 3 && $server_stage == 0>>
<div class="guide-next">Jamal signed off. Take the bus to Adriana's lair with the card and the key and talk business - she has a price you won't expect. See "School servers".</div>
<<else>>
<div class="guide-next">Pollock is finished and her access is in Adriana's hands. The rest of this arc runs through the "Warden's daughter" and "School servers" spoilers below.</div>
<</if>>
<</switch>>
<<if $pollock_husband == 0 && $pollock_stage >= 1 && $pollock_stage < 3>>
<p class="guide-later">Also: something's going on outside the civics room. Her husband is worth a look.</p>
<<elseif $pollock_husband == 1 && $pollock_stage == 2>>
<p class="guide-later">At lunch, when Marcello's sad Corolla is in the visitor lot, take a quiet look at her office door.</p>
<<elseif $pollock_husband >= 2 && $pollock_stage == 2 && $pollock_leverage < 10>>
<p class="guide-later">Her lunch hour keeps its schedule - the gap in the blind pays out fresh leverage every few days.</p>
<</if>>
<</if>>
</details>
<details class="spoiler"><summary>School: Britney Amber (the counselor)</summary>
<<if $school_job == 0>>
<div class="guide-next">You'll meet the counselor once you're working the school (main quest).</div>
<<elseif $amber_stage == 0>>
<div class="guide-next">School rep $school_rep/4 - earn it and she'll step in for you by the trophy case.</div>
<<elseif $amber_stage <= 3>>
<div class="guide-next">Visit her office in the afternoon - one "session" at a time<<if $day < $amber_next_day>>; she's booked today, come back tomorrow<</if>>.</div>
<<elseif $amber_stage == 4>>
<div class="guide-next">She's getting you a promotion. Give her a day or two, then stop by the office<<if $day < $amber_next_day>> (not today)<</if>>.</div>
<<elseif $amber_stage == 5>>
<div class="guide-next">She's been planning a thank-you for the couch session - visit her office<<if $day < $amber_next_day>> (she's booked today, come back tomorrow)<</if>>. Only after it does the coach's idea open up.</div>
<<else>>
<<if $incel_path == 1 && $incel_stage == 8 && not $incel_deprogram_arranged>>
<div class="guide-next">The deprogramming graduation needs Amber. Visit Britney's office in the afternoon to arrange her workshop.</div>
<<elseif $incel_path == 2 && $incel_stage == 10 && not $incel_gangbang_arranged>>
<div class="guide-next">The room 021 boys are ready for their final exercise. Visit Britney's office in the afternoon and arrange it with her.</div>
<<elseif $amber_shared == 1>>
<div class="guide-next">Tommy said yes. Britney gets the final vote - her office, afternoon.</div>
<<elseif $amber_shared == 2>>
<div class="guide-next">It's on: stay late in the gym wing when Tommy locks up - her office light will be on.</div>
<<elseif $amber_shared == 3>>
<div class="guide-next">The office arrangement stands - stay late in the gym wing whenever Tommy locks up. The rest of her arc arrives in the next update.</div>
<<else>>
<div class="guide-next">The sessions are a standing arrangement. Her arc continues in the next update.</div>
<</if>>
<</if>>
</details>
<details class="spoiler"><summary>School: Coach Gunn</summary>
<<if $school_job == 0>>
<div class="guide-next">The gym wing opens with the school job (main quest).</div>
<<else>>
<p class="guide-later">The gym wing is an afternoon round, once a day. Your closet keeps the running numbers: standing, Pollock leverage, master key.</p>
<<if $gunn_trust == 0>>
<div class="guide-next">Coach: swing by the gym wing in the afternoon. Fold the bleachers in first, not after.</div>
<<elseif $gunn_trust == 1 && $gunn_case == 0>>
<div class="guide-next">Coach: go back to the gym wing - a vape accusation is about to bury him. You know which trash bag holds the proof (2 energy to dig it out), but will you act on it?</div>
<<elseif $gunn_case == -1>>
<div class="guide-next">Coach: you stayed out of his case. His door stays polite - and shut.</div>
<<elseif $gunn_trust == 3>>
<div class="guide-next">Coach: he owes you his pension. Take the after-hours beer in his office (gym wing) - and when the flag comes up, pick your ground. His story only moves once you have.</div>
<<elseif $gunn_sticker == 1>>
<div class="guide-next">Coach: you pressed him on the sticker. Give it a day or two, then swing by the gym wing and look at the truck.</div>
<<else>>
<div class="guide-next">Coach: Friday-night friends now. Once you're deep enough with Britney, he has an idea worth hearing (see her spoiler).</div>
<</if>>
<</if>>
</details>
<details class="spoiler"><summary>School: detention and room 021</summary>
<<if not $detention_job>>
<div class="guide-next">Room 019 needs a supervisor, and Britney's arc gets you the post (her stage 4). </div>
<<else>>
<<switch $incel_stage>>
<<case 0>>
<div class="guide-next">Check afternoon detention from the Hallway. The roster is rolled once per school day: 33% of days are clear; on staffed days the four seniors arrive together half the time. Meet them when their names are on the list.</div>
<<case 1>>
<div class="guide-next">Catch the boys on another detention day. Terrence has been reading them their scripture, and it is time to take it apart (requires knowledge 20). Other students and clear rosters are still regular detention days, not a reset.</div>
<<case 2>>
<div class="guide-next">The boys want back into their old fort - room 021, from the Hallway in the afternoon. The new lock needs the master key (<<if $master_key >= 1>>yours already turns it<<else>>at least 1/3 - risky extra work orders at the school build it<</if>>).</div>
<<case 3>>
<div class="guide-next">They've earned the real answer. Back to room 021 (give it a day or two between visits) - and know that the fork you pick there sticks: talk them out of the ideology, or teach them your way.</div>
<<case 5>>
<<if $incel_path == 1>>
<div class="guide-next">The de-programming talks begin in room 021. Start by talking through the forum's claims and the harm they do.</div>
<<else>>
<div class="guide-next">The next lesson needs Adriana's kink packet. Visit her lair and pick up the room 021 materials; she keeps them locked until her final lair invitation is complete. Then give the boys a day to prepare before returning to room 021.</div>
<</if>>
<<case 6>>
<<if $incel_materials == 0>>
<div class="guide-next">The next session needs material from Adriana. Visit her lair and pick up the room 021 packet, then give the boys a day to prepare.</div>
<<elseif $incel_path == 1>>
<div class="guide-next">Adriana's meme packet is ready. Take it to room 021 for another de-programming talk about rejection, friendship, and seeing women as people.</div>
<<else>>
<div class="guide-next">Adriana's kink packet is ready. Take it to room 021 for the BBC, BNWO, and Queen of Spades overview - fantasy, consent, and boundaries first.</div>
<</if>>
<<case 7>>
<<if $incel_path == 1>>
<div class="guide-next">Run one more de-programming talk in room 021. It uses another of Adriana's memes, with the same focus on rejection, friendship, and seeing women as people.</div>
<<else>>
<div class="guide-next">The kink overview is done. Room 021 now hosts the group-preparation session for the three adult seniors.</div>
<</if>>
<<case 8>>
<<if $incel_path == 1>>
<<if $amber_stage < 6>>
<div class="guide-next">The two meme talks are done. Finish Amber's office arc before the boys can graduate.</div>
<<elseif not $incel_deprogram_arranged>>
<div class="guide-next">The boys are ready for graduation. Visit Amber's office in the afternoon to arrange the date-line workshop.</div>
<<elseif $day < $incel_next_day>>
<div class="guide-next">Amber booked the graduation workshop for tomorrow. Return to room 021 then.</div>
<<else>>
<div class="guide-next">Amber is ready. Return to room 021 for the graduation workshop (2 energy).</div>
<</if>>
<<else>>
<div class="guide-next">The group preparation is complete. Give the boys a couple of days, then return to room 021 for a separate comfort session.</div>
<</if>>
<<case 9>>
<<if $incel_path == 1>>
<<if $mom_thanks == 0>>
<div class="guide-next">The boys have graduated and room 021 is theirs now. One final thank-you remains: a woman in a church coat waits by the maintenance office in the afternoon.</div>
<<else>>
<div class="guide-next">The boys have graduated. They are doing their own thing now; you gave them what you could.</div>
<</if>>
<<else>>
<div class="guide-next">The comfort session is complete. Give the boys a couple of days, then return to room 021 for the private masturbation session.</div>
<</if>>
<<case 10>>
<<if $amber_stage < 6>>
<div class="guide-next">The private masturbation session is complete. Finish Britney Amber's office arc before the final exercise can be proposed.</div>
<<elseif not $incel_gangbang_arranged>>
<div class="guide-next">The boys are ready, but the graduation must be arranged first. Visit Britney Amber in the counselor's office in the afternoon, then return to room 021.</div>
<<else>>
<div class="guide-next">Amber approved the graduation exercise. Return to room 021 for the final session (3 energy).</div>
<</if>>
<<default>>
<<if $incel_path == 1>>
<<if $mom_thanks == 0>>
<div class="guide-next">The boys have graduated. A woman in a church coat still waits by the maintenance office in the afternoon.</div>
<<else>>
<div class="guide-next">The boys have graduated and are doing their own thing now. You gave them what you could.</div>
<</if>>
<<else>>
<div class="guide-next">The club graduated your way.</div>
<</if>>
<</switch>>
<div class="guide-later">Detention itself costs 2 energy and earns 1 school reputation whenever students are present. Its six rotating room-019 events vary with your reputation; when the boys are assigned after room 021 is open, the club is unavailable that day. Run the session, wait for tomorrow, or spend 3 school reputation in room 019 to clear all four.</div>
<</if>>
</details>
<details class="spoiler"><summary>School: Linda</summary>
<<if not $detention_job>>
<div class="guide-next">Linda's story starts only after Britney's arc gives you the detention post.</div>
<<elseif $linda_stage == 0>>
<<if $school_rep < 10>>
<div class="guide-next">Build school reputation to 10.</div>
<<else>>
<div class="guide-next">Check room 019 on an afternoon with a clear detention roster.</div>
<</if>>
<<elseif $linda_stage == 1>>
<<if $day < $linda_next_day>>
<div class="guide-next">Linda asked for time to think. Give her a couple of days, then return to your school closet.</div>
<<else>>
<div class="guide-next">Linda is already in your closet, waiting for the second session.</div>
<</if>>
<<elseif $linda_stage == 2>>
<<if $incel_path != 2 || $incel_stage < 11>>
<div class="guide-next">Linda wants the room 021 finale, but first finish the boys' embrace route and its graduation exercise. The deprogramming path does not unlock it.</div>
<<elseif $day < $linda_next_day>>
<div class="guide-next">The boys are ready, but Linda needs one night before the room 021 invitation. Return tomorrow.</div>
<<else>>
<div class="guide-next">Room 021 is open for Linda's final session. Visit the club in the afternoon.</div>
<</if>>
<<else>>
<div class="guide-next">Linda has had her room 021 initiation. Her school story is complete.</div>
<</if>>
</details>
<details class="spoiler"><summary>William and Agatha</summary>
<<if $william_stage == 0>>
<div class="guide-next">Not started. Establish an open relationship with Ella, then meet the four boys in detention once and leave the school through the Outside passage. Devin's father is waiting near the pickup line, and he is someone from your past.</div>
<<elseif $william_stage == 1>>
<div class="guide-next">William gave you his number and wants to drink. He's waiting at the bar<<if $day < $william_next_day>> - give it a day<</if>>.</div>
<<elseif $william_stage == 2>>
<<if $ella_stage >= 11>>
<div class="guide-next">He invited you and Ella to dinner. Tell Ella about it at the library to set it up.</div>
<<else>>
<div class="guide-next">He invited you and Ella to a double date - but you'd want your future with Ella settled first (her arc needs to reach its late stage). The invitation keeps.</div>
<</if>>
<<elseif $william_stage == 3>>
<div class="guide-next">The dinner is set. Go to it from The Hood<<if $day < $william_next_day>> in a couple of days<</if>>.</div>
<<elseif $william_stage == 4>>
<div class="guide-next">Ella made her wishes clear. William turns up at the school himself<<if $day < $william_next_day>> in a day or so<</if>> - look for him in the afternoon Hallway.</div>
<<elseif $william_stage == 5>>
<div class="guide-next">It's arranged: Agatha booked a downtown suite. Head out from The Hood<<if $day < $william_next_day>> tomorrow<</if>>.</div>
<<elseif $william_stage == -1>>
<div class="guide-next">You kept the visit with William casual and chose not to pursue Ella's proposal. There is no repeat visit in this build.</div>
<<else>>
<div class="guide-next">The night with William and Agatha is complete. There is no repeat visit in this build - but Ella will want checking on once the Pollock business at the school is settled.</div>
<</if>>
</details>
<details class="spoiler"><summary>Warden's daughter</summary>
<<if $madi_stage >= 1>>
<div class="guide-next">Madison Collins. Grade 12, eighteen, cross country and yearbook, and a father who goes to work inside the walls holding Jeremy. The plan is the Mrs. Bond playbook run a second time, and it can't start until Adriana is inside the school's own network - see "School servers". Her story continues in the next update.</div>
<<elseif $database_access >= 2>>
<div class="guide-next">You have the name off Terrence's borrowed laptop. Afternoon, from the Hallway: work the east corridor at last bell and put a face to it. (Optional - the main line runs through Jamal and Adriana, see the Pollock spoiler.)</div>
<<elseif $database_access == 1>>
<div class="guide-next">Pollock's security key is in your pocket, and you don't know what it opens. Terrence does - afternoon, from the Hallway (1 energy).</div>
<<elseif $pollock_stage < 2>>
<div class="guide-next">Someone at this school is the reason you came - the road to your brother. Finish Principal Pollock first.</div>
<<else>>
<div class="guide-next">The name you came for is in the district database, and the only person who can open it is the principal. Finish her.</div>
<</if>>
</details>
<details class="spoiler"><summary>School servers</summary>
<<if $server_stage == 0>>
<div class="guide-next">Adriana names this as her price when you bring her the new target (Pollock's card and security key, plus the name). She turns down money, services and entertainment: she wants hardware on the school's rack, and she wants the boy who can put it there. You choose - hook Terrence up with her, or pay $100 like Mrs. Bond and keep him out of it. If she has already handed you her princess list and that night hasn't happened yet, there's a third way: offer her the night instead.</div>
<<elseif $server_stage == 1>>
<p>Pollock's key logs into the district systems from anywhere, but the school's own stack - door controllers, camera recorder, and the wireless every student's phone joins each morning - only answers to machines on the network in the basement server room. Adriana needs her hardware physically on it, and she isn't coming into a building.</p>
<div class="guide-next">You're carrying her box<<if $terrence_deal == 1>> and her message<</if>>. Afternoon, from the Hallway: put the server room to Terrence. No stat or stage requirement. He reacts to the job, and to Adriana, according to the way you steered the room 021 boys.<<if $terrence_deal == 3 && $hacker_level < 9>> You also still owe Adriana her princess night (see her spoiler).<</if>></div>
<<elseif $terrence_deal == 2>>
<div class="guide-next">Terrence took the job for nothing but the work. He asked for a day to put Adriana's box on the rack in the basement server room. The switch will take it for an old print server, and it talks out through its own modem. You paid Adriana in cash and kept him out of her reach - for now. Continues in the next update.</div>
<<elseif $terrence_deal == 3>>
<div class="guide-next">Terrence took the job for nothing but the work. He asked for a day to put Adriana's box on the rack in the basement server room. The switch will take it for an old print server, and it talks out through its own modem. You paid Adriana with her princess night and kept him out of her reach - for now.<<if $hacker_level < 9>> The night is still owed (see her spoiler).<</if>> Continues in the next update.</div>
<<else>>
<div class="guide-next">Terrence took the job. He asked for a day to put Adriana's box on the rack in the basement server room. The switch will take it for an old print server, and it talks out through its own modem. His payment is a trip across the wall to be debriefed by Adriana in person, which she was extremely clear about. Continues in the next update.</div>
<</if>>
</details>
<details class="spoiler"><summary>Room rent</summary>
<<if $rent_waived>>
<div class="guide-next">Rent is waived for this save - the room is yours for nothing. Nothing to plan around.</div>
<<else>>
<<set _rentNext = $rent_day > 0 ? $rent_day + 7 : 15>>
<p>The room above the corner store costs $20 a week, collected by envelope under the door. Nothing is due before day 15; after that it comes every 7 days, and it finds you wherever you sleep - the school closet counts.</p>
<p>The envelope is a choice, not an automatic deduction, and you can't leave the morning until you answer it:</p>
<ul>
<li><b>Pay $20</b> - only offered when you actually have it. No other effect.</li>
<li><b>Leave it empty while broke</b> - <span class="stat-name">Respect</span> -10.</li>
<li><b>Leave it empty with $20 in your pocket</b> - <span class="stat-name">Respect</span> -20. Refusing while you can afford it costs twice as much as being broke, so don't skip the envelope to save cash you already have.</li>
</ul>
<<if $day < 15>>
<div class="guide-next">First envelope lands on day 15 (in <<= 15 - $day>> days). Have $20 spare by then.</div>
<<else>>
<div class="guide-next">Next envelope on day _rentNext<<if _rentNext - $day <= 0>> (this morning)<<elseif _rentNext - $day == 1>> (tomorrow morning)<<else>> (in <<= _rentNext - $day>> days)<</if>>. You have <<print "$" + $money>>.</div>
<</if>>
<</if>>
</details>
<details class="spoiler"><summary>Around the hood</summary>
<ul>
<li><b>Earl the bartender</b> - <<if $bartender_stage < 3>>keep working the bar room; he warms up in stages (now $bartender_stage/3)<<else>>trusted: a free round and the back-table dice game, one game a day<</if>>.</li>
<li><b>Vittoria, the warehouse floor manager</b> - <<if $warehouse_manager_stage == 0>>work warehouse shifts<<elseif $warehouse_manager_stage < 5>>keep showing up for shifts - at most one scene a day, and she gets bolder each time<<else>>you know her office well now; scenes keep coming while you work<</if>>.</li>
<li><b>The construction site</b> - <<if $construction_wife == 0>>steady pay, a foreman worth helping - and one day a trophy wife shows up on site<<else>>the trophy-wife visit is done; the site is honest money now<</if>>.</li>
</ul>
</details>
<</nobr>>
<<return>><<nobr>>
/* Streak: worked yesterday too = the algorithm and the crew both remember you */
<<if $warehouse_last_day == $day - 1>>
<<set $warehouse_streak += 1>>
<<else>>
<<set $warehouse_streak = 1>>
<</if>>
<<set $warehouse_last_day = $day>>
<<album "img/general/warehouse_" 3 "webp" "location">>
/* ==== The shift itself ==== */
<<if visited() == 1>>
<p>The warehouse is a sprawling, fluorescent-lit labyrinth that hums with the constant churn of machinery and exhausted bodies. Rows upon rows of towering metal shelves stretch endlessly, packed with goods waiting to be processed, packed, and shipped. The air is stale and heavy with cardboard, sweat, and industrial cleaner.</p>
<p>Your shift begins with a scan - a barcode reader strapped to your wrist, chirping with orders that demand you move fast, faster, always faster. Each task is timed down to the second, every delay is flagged by an algorithm that doesn't care if you've worked ten hours or if your feet ache so badly they might give out.</p>
<<pic "img/warehouse/piss_bottles.jpg" "location">>
<p>Toilet breaks are timed too: four minutes, twice a shift, and the nearest bathroom is a six-minute walk from the far aisles. The veterans solved that math years ago - there's a shelf on row forty where the empty bottles stand in a quiet row like trophies. By mid-shift you're unzipping behind the pallet wrap with one eye on the aisle like everybody else. Dignity is the first thing the algorithm optimizes away.</p>
<p>By the end of the day, your muscles burn, your back screams, and your mind feels hollowed out from the monotony. But the quotas keep rising, and the paycheck is barely enough to justify the grind. As you clock out under the unfeeling gaze of security cameras, you can't shake the thought that you've been processed just like the products you've spent all day moving.</p>
<<pic "img/warehouse/vittoria_full.jpg" "story">>
<p>Above it all, on a mezzanine walkway lit better than anything on the floor, the manager paces with a tablet, logging every stalled second below. Vittoria never shouts. She just glances down at a slowing aisle, and a half-beat later the scanner on your wrist tightens the clock, as if she's the one actually running the algorithm and the software is just her hands. At one point you catch her looking at you, not your aisle, a beat too long for it to be about your numbers.</p>
<<else>>
/* Repeat visits: one short shift note instead of the full intro */
<<set _shiftFlavor = [
"Ten hours of the scanner chirping on your wrist. The algorithm shaved another two seconds off the per-item target this week; nobody announced it, your feet just found out.",
"The quota board says the floor is at 94%. The quota board has never once said 100%, because then they'd have to stop raising it.",
"Row forty's pissbottle shelf has grown since your last shift. Somebody's added a two-liter. You try not to think about what kind of day produces two liters of piss.",
"Four minutes, twice a shift. You spend one of today's bathroom breaks just standing in the stall with your eyes closed, which is the closest thing this building has to a chapel.",
"The intercom mispronounces three names today, including yours. The robotic voice never apologizes and never will.",
"A pallet comes down wrong on row nine and the whole floor freezes for exactly the four seconds it takes to see nobody's under it.",
"Same belts, same chirp, same burn in your shoulders by hour six. The shift doesn't leave a memory, just a number on your paycheck and two fewer of everything in your spine."
]>>
<<if $warehouse_manager_stage >= 3>>
<<run _shiftFlavor.push("An aisle camera follows you the length of row twelve, swiveling. Upstairs behind the keycard door there isn't a single one.")>>
<</if>>
<<set _shiftFlavor = _shiftFlavor.random()>>
<p><<= _shiftFlavor>></p>
<</if>>
<<set _pay = 20>>
<<if $warehouse_streak >= 3>>
<<set _pay += 5>>
<p>Three shifts without a gap. The system tags you "reliable" and the shift lead slips you the scanner that doesn't jam. It's five extra dollars.</p>
<</if>>
<<statchange "money" _pay>>
<<statchange "energy" -5>>
<<statchange "physical" -2>>
<hr class="section-break">
/* ==== Floor scene: Vittoria arc or a coworker vignette ==== */
/* Floor manager arc: 0 nothing, 1 bottle seen, 2 she circles, 3 lounge handjob, 4 lounge anal (favor unlocked), 5 shared with the crew; scene 6 = repeatable lounge visit that re-arms the favor.
Day gate: one Vittoria scene per day - a second shift the same day gets a plain floor. */
<<set _managerScene = 0>>
<<if $warehouse_manager_day == $day>>
/* Vittoria already had you today - the floor gets a plain shift */
<<elseif $warehouse_manager_stage == 0 && visited() > 1 && random(1,100) <= 30>>
<<set _managerScene = 1>>
<<elseif $warehouse_manager_stage == 1>>
<<set _managerScene = 2>>
<<elseif $warehouse_manager_stage == 2 && random(1,100) <= 30>>
<<set _managerScene = 3>>
<<elseif $warehouse_manager_stage == 3 && random(1,100) <= 30>>
<<set _managerScene = 4>>
<<elseif $warehouse_manager_stage == 4 && random(1,100) <= 30>>
<<set _managerScene = 5>>
<<elseif $warehouse_manager_stage == 5 && $warehouse_manager_favor == 0 && random(1,100) <= 30>>
<<set _managerScene = 6>>
<</if>>
<<if _managerScene > 0>>
<<set $warehouse_manager_day = $day>>
<</if>>
<<if _managerScene == 1>>
<<set $warehouse_manager_stage = 1>>
<p>Mid-shift, bladder full, row forty. You're halfway through filling your bottle when the click of heels rounds the endcap - Vittoria, the floor manager, tablet in hand, mouth already open to write you up. Then her eyes drop, and stay dropped. The write-up never comes. She looks at your big black cock, then at your face, taps something on her tablet that is definitely not a violation report, and walks away with her composure on maybe sixty percent power.</p>
<<pic "img/warehouse/vittoria_closeup.jpg" "story">>
<div class="req">Vittoria didn't write you up. You're not sure yet what she wrote instead.</div>
<<elseif _managerScene == 2>>
<<set $warehouse_manager_stage = 2>>
<p>Vittoria crouches to inspect the bottom shelf of your aisle, tablet angled like she's checking labels and not you. The squat pulls her blouse tight across her chest, and a button gives way with a pop, then another - she doesn't reach to fix it, just keeps reading barcodes like nothing happened, her tits spilling out inches from your knee.</p>
<<pic "img/warehouse/vittoria_squat.jpg" "story">>
<<elseif _managerScene == 3>>
<<set $warehouse_manager_stage = 3>>
<p>Vittoria has audited your aisle four times this week. Nobody's aisle gets audited four times. Today the audit ends at the foot of the metal staircase nobody from the floor ever climbs, the one with the keycard door at the top. She swipes her card and holds the door like she's already argued with herself about this and lost.</p>
<<speech "Vittoria" "Managers' lounge. No cameras up here.">>
<p>The room upstairs is another planet. Air conditioning that actually works. A coffee machine with real beans and no coin slot. A water cooler you can just drink from - cup after cup, no scanner timing the walk, no algorithm flagging the seconds. There's a sofa. There are plants. You've spent months pissing in bottles sixty feet below a room with plants in it.</p>
<<speech "Vittoria" "Drink something first. You're all dehydrated down there - I sign the incident reports, I know.">>
<<video "img/warehouse/vittoria_handjob.mp4">>
<p>You weren't going to say no to the only warm room in this building. She works your zipper with greedy hands, and the moment your cock springs out she exhales like she's been holding that breath since row forty. No clock up here, so she takes her time - slow, tight strokes, thumb dragging over the head, whispering filth about your scanner metrics into your ear while the cooler burbles in the corner. When you finally come she milks every drop out onto her fingers, inspects the mess like a number she finally approves of, and licks it clean. Then she straightens her lanyard and is a floor manager again in under four seconds.</p>
<<speech "Vittoria" "Your break ran long. I'll fix it in the system.">>
<div class="req">Whatever this is, it's escalating. And now you know what's at the top of the stairs.</div>
<<elseif _managerScene == 4>>
<<set $warehouse_manager_stage = 4>>
<p>End of shift, the intercom calls your badge number - not to the floor office this time, but up. In the lounge the blinds are down, the coffee machine is already hissing, and Vittoria is standing at the window that overlooks the floor, watching the night crew crawl the aisles below like it's an ant farm she owns.</p>
<<speech "Vittoria" "Eleven years I've run this floor. I piss on a schedule, I eat on a schedule, I got divorced on a schedule. Everything I have, the company has a copy of. Except one thing.">>
<p>She bends herself over the desk, hikes her skirt up over her hips, and hooks her thumb into her panties, dragging them aside. Not her pussy. Her hand reaches back and spreads herself open.</p>
<<speech "Vittoria" "My husband never got it. The company never got it. This one was always mine to give. So take it - and don't you dare be gentle, I've had eleven years of gentle-on-paper.">>
<<video "img/warehouse/vittoria_anal.mp4">>
<p>You spit on her asshole, line up, and push in while she claws the cushions and swears through her teeth. Then you fuck her ass doggystyle over the arm of the managers' desk. She comes twice - once cursing the company name, once cursing yours - and when you finally bury yourself deep and unload in her ass, she just stays there, bent and dripping on furniture the workers below will never be allowed to sit on.</p>
<p>She slides off the sofa arm onto the carpet, sits back on her heels, and looks up at you - blouse open, makeup wrecked, your cum leaking out of her ass. Then she pulls her hair back off her face like a woman getting ready for a meeting.</p>
<<speech "Vittoria" "Row forty. I've thought about it every day since. All that water they make you ration - I want it. On me. I want what the bottle gets.">>
<<video "img/warehouse/vittoria_piss_solo.mp4">>
<p>So you stand over her and let go. The stream hits her upturned face and she doesn't flinch - she tilts into it, mouth open, letting it drum off her forehead and sheet down her neck, soaking her massive fake tits. She rubs it into her skin with both hands like it's something expensive, the woman who times every bathroom break on the floor getting hosed down on a carpet the cleaners will never be told about. By the time you run dry she's kneeling in a dark ring of piss, dripping from her chin and her nipples, grinning up at you.</p>
<p>Afterward she pours you a coffee with shaking hands, no coin slot, no clock, and starts laughing - a real laugh, maybe her first one in this building.</p>
<<speech "Vittoria" "Fixed your metrics for the month. And if anything ever... falls off a shelf near you - once - I didn't see it.">>
<<set $warehouse_manager_favor = 1>>
<div class="req">Vittoria owes you one blind eye. Exactly one.</div>
<<elseif _managerScene == 5>>
<<set $warehouse_manager_stage = 5>>
<p>The lounge again, after close. Vittoria is on her third coffee and her second confession, standing at the window over the dark floor.</p>
<<speech "Vittoria" "I time their breaks. I write them up for the bottles. Eleven years of it. You know what I think about now, since row forty? All of them. The whole shift. I want to be the break room. And I want you to run the schedule.">>
<p>So you pick the crew yourself - the night-shift loaders, the dock guys, the ones whose names the intercom always mispronounces and whose piss has been going into bottles since before you got here. You badge them up the metal staircase one by one. Watching five floor workers walk into the managers' lounge is its own kind of pornography: they drink from the cooler cup after untimed cup, someone puts real beans through the machine just because he can, and Vittoria kneels down in the middle of the room she used to hide in.</p>
<<video "img/warehouse/blowbang.mp4">>
<p>The blowbang starts before the coffee's done brewing. Five cocks around her face and she works the line like a woman clearing a backlog, stroking two while she gags on a third, lanyard still on, spit stringing off her chin onto the carpet nobody downstairs is allowed to walk on. Then they move to the sofa...</p>
<<video "img/warehouse/gangbang.mp4">>
<p>They pass her around for the better part of an hour: double-penetrating her over the sofa arm, riding one loader while another pumps her from behind, her ass and pussy traded back and forth until she stops being able to say whose turn it is and starts just saying please. The men are quiet about it, almost reverent - nobody wants to wake whatever god runs the cameras that aren't up here - but every one of them comes in her or on her like he's settling a debt eleven years past due.</p>
<<speech "Vittoria" "One more thing. All that water you've been drinking. I time your bathroom breaks - so this is your bathroom break. All of you. Right here.">>
<<video "img/warehouse/piss_group.mp4">>
<p>She kneels in the middle of the lounge, mouth wide, and the men who've pissed in bottles for years empty themselves into the floor manager instead - stream after stream into her open mouth, down her blouse, into the carpet, while she swallows what she can, gulping and coughing and reaching for the next one, her hand jammed between her legs the whole time. She comes kneeling in a puddle of the night shift's piss, drenched and gasping, and then she starts laughing again - that same real laugh, louder now, echoing off the window over her spotless, silent floor.</p>
<<speech "Vittoria" "Nobody clocks out. I'm approving the overtime. All of it.">>
<<statchange "respect" 2>>
<p>The dock guys look at you differently on the way down the stairs. You're the man who got them into the lounge.</p>
<div class="req">The crew shared the lounge, the coffee, and the manager. Some class barriers you tear down one hole at a time.</div>
<<elseif _managerScene == 6>>
<p>Your badge number gets called up the stairs at clock-out. No pretext anymore - some nights it's just the two of you and the sofa arm, her ass raised and the blinds down; some nights she has you badge a couple of the dock guys up and the water cooler runs dry in more ways than one. Either way the coffee is free, the cameras don't exist, and your metrics come out immaculate.</p>
<<set _loungeVid = ["img/warehouse/vittoria_anal.mp4", "img/warehouse/vittoria_piss_solo.mp4", "img/warehouse/blowbang.mp4", "img/warehouse/gangbang.mp4", "img/warehouse/piss_group.mp4"].random()>>
<<video _loungeVid>>
<<set $warehouse_manager_favor = 1>>
<div class="req">Vittoria's blind eye is back on the payroll.</div>
<<else>>
<<set _coworker = random(1,6)>>
<<switch _coworker>>
<<case 1>>
<p>Gus, the old-timer who was scanning boxes here back when there was still a union to bust, works the aisle across from you all shift. He doesn't talk much.</p>
<<case 2>>
<p>The kid on row twelve does his night-school flashcards during the scanner's four-second sync delays - anatomy terms taped inside his wrist brace. "Two more semesters," he tells you at the water fountain.</p>
<<case 3>>
<p>Rosa works doubles - her badge is always already clocked in when you arrive and still lit when you leave. Two kids in the school uniforms she keeps as her phone wallpaper.</p>
<<case 4>>
<p>At break, Rosa presses a foil-wrapped tamale into your hands, waving off refusal in two languages. "You look like my brother when he doesn't eat." It's the best thing you've tasted all week.</p>
<<statchange "energy" 1>>
<<case 5>>
<<if $warehouse_manager_stage >= 2>>
<p>The crew's warmth has a draft in it lately. Gus won't meet your eyes, and when Vittoria's heels pass the aisle, somebody mutters "there goes your quota review" just loud enough. Everyone knows why your metrics never get checked. Belonging was the one thing this place paid honestly, and you've been spending it.</p>
<<statchange "respect" -2>>
<<else>>
<p>The kid catches your sleeve at clock-in: "Vittoria is on the floor in a mood, stay off row nine." He's right - by mid-shift two pickers from row nine are in the office getting their metrics read to them like charges.</p>
<</if>>
<<default>>
<p>A shift with no faces in it - just the belts, the chirp of the scanner, the robotic intercom voice mispronouncing every name it calls.</p>
<</switch>>
<</if>>
/* ==== Random event: the disposal tote ==== */
<<if random(1,100) <= 25>>
<hr class="section-break">
<p>Row thirty-one, bottom shelf: a tote flagged DAMAGED - DISPOSAL that is not damaged at all. A tablet, sealed, mislabeled by the same algorithm that times your piss. Nobody scans disposal totes. The camera on this aisle has been dead since winter. You have about forty seconds of being the only person who knows this exists.</p>
<div id="pilfer-choice">
<<linkreplace "Let it ride the belt">>
<<replace "#pilfer-output">>
<p>You scan it, box it, send it down the line to be destroyed for an insurance line-item. The system chirps its approval. Honesty in this building is a service you provide for free.</p>
<</replace>>
<<replace "#pilfer-choice">><</replace>>
<</linkreplace>><br>
<<linkreplace "Pocket it">>
<<replace "#pilfer-output">>
<<if random(1,100) <= 15>>
<<if $warehouse_manager_favor == 1>>
<p>Loss Prevention is waiting at the clock-out gate with the dead camera's not-so-dead twin footage queued up on a tablet. Your stomach drops - and then Vittoria appears, plucks the tablet from his hands, squints at it, and declares the timestamp corrupted and the tote correctly processed for disposal. You've just spent your favour.</p>
<<set $warehouse_manager_favor = 0>>
<<else>>
<p>Loss Prevention is waiting at the clock-out gate. They don't call the police - shrinkage reports are bad for the site's numbers - they just empty your jacket onto a table in front of the whole shift change, photograph your badge, and walk you out past Gus and Rosa and the kid, none of whom look at you. Your badge dies in the reader behind you.</p>
<div class="req">Banned from the warehouse for a week.</div>
<<set $warehouse_banned = $day + 7>>
<<set $warehouse_streak = 0>>
<</if>>
<<else>>
<<set _fence = random(25,60)>>
<p>The tote rides out under your jacket, one more damaged item in a building full of damaged items. The pawn guy behind the bar doesn't ask where retail electronics come from - nobody in the hood asks where anything comes from.</p>
<<statchange "money" _fence>>
<<statchange "heat" 5>>
<</if>>
<</replace>>
<<replace "#pilfer-choice">><</replace>>
<</linkreplace>>
</div>
<div id="pilfer-output"></div>
<</if>>
/* ==== Random event: overtime offer ==== */
<<if $energy >= 3 && random(1,100) <= 20>>
<hr class="section-break">
<p>The intercom crackles at clock-out: the outbound truck is short-staffed and overtime pays cash-adjacent rates for anyone who stays.</p>
<<linkreplace "Stay for the overtime">>
<p>Three more hours under the loading dock floodlights, throwing boxes into a trailer while your spine files a formal complaint.</p>
<<statchange "money" 15>>
<<statchange "energy" -3>>
<<statchange "physical" -1>>
<</linkreplace>>
<</if>>
<hr class="section-break">
/* Adriana's princess list: Vittoria reroutes whatever is still in her cart.
Gated on the relationship (stage 4, when she starts owing you a blind eye),
no catch roll, and her pilfer favor is left alone. */
<<if $hacker_level == 8 && $warehouse_manager_stage >= 4 && setup.princess.cartLeft().length > 0>>
<<linkreplace "Ask Vittoria to reroute a package">>
<p>You catch her on the mezzanine at clock-out and tell her quietly what you need: a few things off the Marketplace catalog, sent across town to an address that isn't yours, without anybody's card getting charged. She pulls the order up on her tablet while you're still talking and reads the pick list back to you in her audit voice.</p>
<<set _pickLeft = setup.princess.cartLeft()>><<set _pickList = []>>
<<if _pickLeft.includes("costume")>><<run _pickList.push("Blue princess dress. Crown. Gloves.")>><</if>>
<<if _pickLeft.includes("anal_lube")>><<run _pickList.push("Heavy-duty anal lube.")>><</if>>
<<if _pickLeft.includes("cum_lube")>><<run _pickList.push("Three bottles of fake cum lube.")>><</if>>
<<if _pickLeft.includes("glass_straight") && _pickLeft.includes("glass_shaped")>><<run _pickList.push("Two massive glass dildos.")>><<elseif _pickLeft.includes("glass_straight")>><<run _pickList.push("A massive glass dildo.")>><<elseif _pickLeft.includes("glass_shaped")>><<run _pickList.push("A ribbed glass dildo.")>><</if>>
<<set _pickLine = _pickList.join(" ")>>
<<speech "Vittoria" _pickLine>>
<p>She stops scrolling and looks at you over the tablet.</p>
<<speech "Vittoria" "Sounds fun.">>
<p>It takes her under a minute. An outbound tote gets flagged as damaged in transit, a replacement ships free of charge to the address you give her, and the loss disappears into the same shrinkage report as every pallet that comes down wrong on row nine.</p>
<<speech "Vittoria" "Next-day delivery. Be gentle... at first.">>
<<for _princessId range setup.princess.cartLeft()>>
<<set $princess_kit[_princessId] = $day + 1>>
<</for>>
<<set $princess_reroute = 1>>
<div class="req">Everything left in Adriana's cart arrives at her lair tomorrow.</div>
<</linkreplace>><br>
<</if>>
<<if $ella_end_quest == 1 && $ella_end_warehouse == 0>>
<<linkreplace "[Ella]Steal some packages">>
<p>You replace the valuable contents of several packages with trash. By the time they will be delivered, you will be far away from here.</p>
<<set $ella_end_warehouse = 1>>
<</linkreplace>><br>
<</if>>
[[Return|The Hood]]
<</nobr>><<pic "img/agatha/william_reunion.png" "story">>
<p>You come out through the service door and cut across the lot. The man leaning against the Range Rover spots you from halfway across it. Not the quick, dismissive glance people give a man in coveralls. His whole posture changes, alert before recognition catches up, and then recognition hits him so hard it wipes twenty years off his face.</p>
<<speech "William" "No. NO. $real_name? Sergeant? They let YOU near children?" "william">>
<p>William Hayes. Three tours' worth of dust, blood, bad coffee, and improvised plans between you. He could get a village elder talking when everybody else was reaching for a weapon. You did not always understand how he made it look so easy, but you trusted him when it counted. And his charms weren't only for locals - women fell before him in such numbers you aren't sure which bodycount was greater. The handshake turns into a grip, then a hug that nearly takes the air out of you. In the passenger seat, Devin watches his father become someone louder and less carefully assembled than the man who usually collects him.</p>
<<speech "William" "Devin - this man carried me down a hill once. I wish I could tell you this story but it's still classified." "william">>
<<speech "Devin" "...You know the janitor?" "devin">>
<p>The connection settles over all three of you at once. The boy from detention is the son of the man who once watched your back. William notices the coveralls, the cart visible through the glass doors, the borrowed name on your chest. He gives none of it the treatment a stranger would. No pity, no questions in front of Devin. He only slips a card into your hand, a phone number written across the back in blue ink.</p>
<<speech "William" "I married rich, brother. Absurdly rich. You'd laugh - I live in a house with rooms nobody's ever been in. Come drink with me and laugh at it, that's an order. Any evening. ANY evening - God knows I have nothing but evenings." "william">>
<p>You agree on a place - he insists on coming to your bar in the Hood. He says he wants to see the place you live now, not some polished halfway point downtown. The Rover pulls away with Devin still watching from the passenger seat.</p>
<<set $william_stage = 1>>
<<set $william_next_day = $day + 1>>
[[Back inside|Hallway]]<<pic "img/agatha/william_bar.png" "story">>
<p>He keeps his word and comes to your bar. You had suggested somewhere between the Hood and downtown. William shot that down with a laugh: he wanted to see where you actually spend your nights. Now he is folding a coat worth more than the booth over its cracked vinyl back, drawing looks from half the room, and grinning as if someone just handed him weekend leave.</p>
<p>Earl brings two beers. William leaves a tip large enough to make Earl look at it twice.</p>
<<speech "William" "Okay. Okay. Look at this place! Sticky table. Warm beer. Brother, I am SO glad to see you I could cry, and I'm SO jealous I could spit." "william">>
<p>Two beers in, the shine begins to come off the story. He gives it to you like a report because that is still the clearest language either of you has. He got out clean, met Agatha Vega while working security at a fundraiser, then married so far up that the air changed around him. Her family owns things he had never imagined could be owned. Devin, his son from a previous relationship, got a place at Thatcher-Ellison, which William calls the one good trade. William got a life with no job, no bills, and endless dinners where men who own senators talk through him. The Vega family can be gracious about him for hours at a time, but they still treat him like part of the furniture.</p>
<<speech "William" "I sleep in a bed the size of our old OP and I miss the OP - how sick is that? Eleven years." "william">>
<p>He works at the beer label with the patience he once saved for field-stripping a rifle.</p>
<<speech "William" "And the worst part is the guilt, man. I thought I suppressed it well enough before seeing you. We both shed our blood for nothing! Now tell me, why the country broke YOU and pensioned me into a palace, how is that fair?" "william">>
<p>You tell him what you believe: the system is fucked up. You are happy for your comrade to get a good life, but even happier that he remains conscious about his status - those already born into privilege often don't.</p>
<p>Of course, you keep your recent developments to yourself, but you share enough other stories to keep the conversation flowing: Ella, school, neighbourhood. It's a good evening. By the end of it, semi-drunk William is already planning the next time he'll see you.</p>
<<speech "William" "Dinner. A proper one, my treat, my booking - don't argue, spending Vega money badly is my one remaining hobby. And bring your girl, the one you just told me about! We'll make a double date. Agatha needs to meet somebody REAL before she forgets they make people, and brother, I need to see you across a table with cloth napkins just once before I die of comfort." "william">>
<p>Ella. You turn it over once and find you like every side of it. You tell him you'll bring her.</p>
<<set $william_stage = 2>>
<div class="req">Tell Ella about the invitation - she's at the bar or the library.</div>
<<statchange "energy" -1>>
[[Call it a night|The Hood]]<<pic "img/ella/agatha_path.jpg" "story">>
<p>You find Ella busy with paperwork. You tell her the story in order: military, William, the marriage, the enormous house, and the invitation. She stops shelving somewhere around the Vega name. By the end she has her chin in her hand and that focused look she gets when a story is beginning to interest her.</p>
<<speech "Ella" "Your army friend married a VEGA? As in the Vega wing at the museum? The wing this library wrote to four times about a book grant and got four rejection letters from?">>
<<speech "You" "That'd be the family.">>
<<speech "Ella" "And he wants to have dinner with US. A janitor and a librarian. In what I assume is a restaurant where they don't print the prices.">>
<<speech "You" "He wants an evening with real people. His words.">>
<p>She turns that over, and then out comes the grin she saves for bad ideas.</p>
<<speech "Ella" "God, that's the saddest rich-person sentence I've ever heard. Yes. Obviously yes. I want to see the cage, I want to meet the woman who owns it, and I want to watch YOU do cloth napkins.">>
<p>She is planning the dress before she has put down the overdue paperback in her hand. You text William a yes. His reply arrives almost immediately, loud with exclamation points, and the dinner is set.</p>
<<statchange "energy" -1>>
<<set $william_stage = 3>>
<<set $william_next_day = $day + 2>>
<div class="req">The day after tomorrow, car will pick you up from the street.</div>
[[Leave her to her planning|Community Center]]<<pic "img/agatha/dining_room.png" "location">>
<p>Agatha's booking is not a table but a private room in a downtown restaurant with no sign on the door. The staff greet William by name and do not so much as glance at the car that brought you from the Hood. Ella gives your hand one firm squeeze at the threshold, and then the evening gets moving.</p>
<<pic "img/agatha/agatha_dinner.jpg" "story">>
<p>Agatha Vega is not what you expected from an heiress. She cannot be much past thirty, and beside William she looks younger still. She looks... expensive. She has the practiced confidence of someone raised at the center of the city, yet she wears it with the faint impatience of a woman who keeps testing the limits of what that name will let her get away with. Her interest in you is direct enough to make you aware of where you put your hands.</p>
<<speech "Agatha" "So you're the sergeant, huh. He tells the hill story at parties, you know. It gets taller every year." "agatha">>
<p>Courses keep arriving, along with wine that tastes better than anything you can name in a bottle shop. Before long the conversation has moved past politeness. For a few hours, all four of you are outside the lives that usually explain you, and nobody seems eager to step back into them.</p>
<hr>
<<speech "William" "Three tours, and the thing I miss - nobody believes this - is the BOREDOM. Real boredom, twelve men and one deck of fifty-one cards. Rich boredom is different." "william">>
<hr>
<<speech "Ella" "My life has changed completely, and I'm still getting used to that. But weirdly I feel more in control than I ever did before." "ella">>
<hr>
<<speech "Agatha" "I was accepted to a dig in Tunisia when I was twenty-one. My father had the foundation's director explain, very kindly, that Vega daughters do not disappear into deserts with dirty fingernails. I spent the next eight years on boards, at launches, and smiling beside plaques with our name on them. I get to rebel, apparently, as long as the family lawyer can expense it." "agatha">>
<hr>
<<speech "You" "First month back, I kept cataloguing exits in rooms. This room has four. Old habits.">>
<<speech "William" "See, HE says it and it's tradecraft. I say it and my therapist adds a session." "william">>
<hr>
<p>Ella raises her glass before she's thought it through, and no one at the table hesitates.</p>
<<speech "Ella" "To escaping.">>
<hr>
<p>William is still good at this. He turns old war stories into something fit for a dinner table without pretending they were clean, and he gives Ella his full attention when she speaks. Twice he recalls something she said much earlier, word for word, and each time she goes pink. Across from you, Agatha asks questions no one usually asks a janitor, then pushes the untouched wine toward you with a conspiratorial grin. The candles burn down while the city keeps going on the other side of the walls.</p>
<<speech "Agatha" "William was right, for once. Real people. We should be very careful, sergeant, or we'll make a habit of you." "agatha">>
[[The taxi home|William Dinner 2]]<<pic "img/agatha/ella_walk_back.jpg" "story">>
<p>The taxi carries you back toward the wall. Ella has her shoes in one hand and her head on your shoulder. She is warm with wine and the long evening, and stays quiet for several blocks while something clearly works itself out in her head.</p>
<<speech "Ella" "Okay. Don't laugh.">>
<<speech "You" "No promises.">>
<<speech "Ella" "Your friend William is... a very attractive man.">>
<p>She sits up to say it properly, cheeks red in the passing streetlight and chin set. Whatever she is about to say, she wants it to be hers before it can embarrass her.</p>
<<speech "Ella" "I see it now, the thing you told me - how he charmed his way through a war and into the riches. I sat there WATCHING him do it to me and it still worked. And before you say anything - I saw Agatha too. The way she looked at you all through dessert. Like she was reading a banned book.">>
<p>You stay quiet. You have learned that Ella sometimes needs room to find the end of a thought. She takes your hand and laces her fingers through yours.</p>
<<speech "Ella" "I think they know what they want from us, but I want to be the one who suggested it - not talked into it, not going along. Proposing. I want to have a little fun with William or Agatha; I bet they are into swinging or some other arrangement.">>
<<if $ella_mmf_stage == 4>>
<<speech "Ella" "You remember the night with Jamal - how ALIVE I felt after, how I couldn't stop talking till sunrise? Wouldn't it be nice if we could repeat that?">>
<</if>>
<<speech "You" "And if I follow up with William - you're sure?">>
<<speech "Ella" "I'm blushing, not hesitating. Learn the difference.">>
<p>Then she laughs at herself, wine-loose and delighted.</p>
<<speech "Ella" "God. This is so unreal.">>
<p>She falls asleep against your shoulder before the taxi reaches the blockpost. You think about her words - sure, there was a tension during the evening, but you get used to ignoring that. Seeing Ella taking initiative... is refreshing.</p>
<p>Sooner or later, William will show up at school again, and you could deliver the proposal.</p>
<<set $william_stage = 4>>
<<set $william_next_day = $day + 2>>
<<statchange "energy" -2>>
[[Home|The Hood]]<<pic "img/agatha/william_hallway.png" "story">>
<p>William does not call ahead. You are running the buffer down the east corridor when you see the coat and then the man inside it. He has signed in as a parent volunteer, carries a gym bag Devin supposedly forgot four days ago, and wears the expression of a man who knows the excuse is thin but has committed to it.</p>
<<speech "William" "Don't say it. I know. I drove twenty minutes to deliver a bag to a boy who didn't ask for it." "william">>
<p>He walks beside your cart as if he belongs there. Students stream around the two of you without much notice: the janitor and the rich father, each invisible for a different reason. William looks at the trophy case, the donor portraits, the polished floors, and something uneasy moves across his face.</p>
<<speech "William" "When I look at the family names on this wall, I'm reminded I don't belong in their world. I'm afraid Devin will never belong, too." "william">>
<<if $incel_path == 1 && $incel_stage >= 5>>
<p>He tells you Devin has started mentioning the boys from room 021 by name. Nothing dramatic - a joke Aaron made, a question Terrence asked - but William notices the difference. His son used to describe school like a place he had to survive. Now, at least sometimes, he has stories.</p>
<<elseif $incel_path == 2 && $incel_stage >= 5>>
<p>He tells you Devin has started staying late with the boys from room 021. His son calls it a club and refuses to explain further, which William respects more than he lets on; although he noticed he's giving his stepmom weird looks.</p>
<<else>>
<p>He tells you he is still learning how little he knows about Devin's days here. The boy gives him one-word answers in the car, then watches the school disappear in the mirror. William hates that he cannot tell whether Devin is bored, lonely, or simply being a teenager.</p>
<</if>>
<p>You lead him into the closet at the end of the corridor. It is private, and it is yours. He takes in the mop smell, flickering light, and folded cot, then sits on an upturned bucket as though it were the best chair in the building. Not the best setting to deliver Ella's ideas.</p>
<<set _choiceMade = false>>
<div id="choice-container">
<<if not _choiceMade>>
<<linkreplace "Relay Ella's proposal">>
<<set _choiceMade = true>>
<<replace "#output">>
<p>He is silent for two full seconds. Then he laughs, younger than he has sounded all day and loud enough that you have to wave him down.</p>
<<speech "William" "Brother. BROTHER. Sorry, I can't control my charms! But you are guilty too! Agatha keeps bringing you up, calling you two 'her sergeant and his librarian,' verbatim. But even she would never..." "william">>
<<speech "William" "You telling me it's Ella's idea and she thinks we're into swinging? Maybe she reads us like those books. But hey, why not write that chapter - looks like everyone is down for it." "william">>
<p>The practical side takes only a few minutes. Time, private place - some suit of Vega's could arrange anonymously.</p>
<<speech "William" "One thing. Tell Ella from me: the suggesting matters. In Agatha's world everything gets arranged FOR you, forever. Somebody choosing it, choosing US - that's the luxury item. See ya, sergeant." "william">>
<p>He shakes your hand in the janitor's closet like you have signed something binding, then goes back to the front desk to deliver a gym bag to a boy who never needed it.</p>
<<statchange "energy" -1>>
<<set $william_stage = 5>>
<<set $william_next_day = $day + 1>>
[[Get back to your corridor|Hallway]]
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Relay Ella's proposal"</em></div><</replace>>
<</linkreplace>><br>
<<linkreplace "Decide you don't want to share Ella">>
<<set _choiceMade = true>>
<<replace "#output">>
<p>You leave Ella's proposal unspoken. William came to see an old friend, and that is all this has to be. The two of you talk for another ten minutes about Devin, school, and the strange trick of trying to build a life inside somebody else's world.</p>
<<speech "William" "You know, brother, I missed this. Just talking somewhere nobody expects anything from us." "william">>
<p>He squeezes your shoulder before heading back to the front desk, still carrying the gym bag that nobody asked for. You probably need to tell Ella later you didn't go through with it.</p>
<<statchange "energy" -1>>
<<set $william_stage = -1>>
[[Get back to your corridor|Hallway]]
<</replace>>
<<replace "#choice-container">><div class="choice-made"><em>"Decide you don't want to share Ella"</em></div><</replace>>
<</linkreplace>>
<</if>>
</div>
<div id="output"></div><p>It is the same hotel where you and Ella once borrowed an empty room and called it a suite. This time the elevator needs a keycard for the top floor, and the doors open on the version of the building meant for people whose names appear on wings. Two bedrooms, a wall of glass over the city, and a bottle chilling in ice that costs more than a month at the warehouse.</p>
<p>Agatha opens the door herself, dressed in white with the gold Vega pin gone and a crooked grin in its place. Behind her, William is working the cork with the concentration of a man handling explosives. Ella goes straight to the window, shoes already in hand.</p>
<<speech "Ella" "You realize we're about nine floors above where you took me on our first date.">>
<<speech "You" "Different room. Same tower.">>
<p>William sets the bottle aside before it is empty. Nobody bothers pretending the bedroom plan still applies. The master suite has one enormous bed, soft low lamps, and four people who have spent the whole evening circling the same idea.</p>
<<video "img/agatha/ella_foursome/foursome_1.mp4">>
<p>You and Agatha end up in front of it first, kissing while Ella and William laugh behind you. Agatha's hands wander over your chest and shoulders with bold, curious little squeezes. When she turns to grin at Ella, you let your palm settle on the round weight of her ass. She gives a surprised gasp, then presses back into your hand as Ella giggles and tells her not to act shocked now.</p>
<<video "img/agatha/ella_foursome/foursome_2.mp4">>
<p>Clothes come off in pieces, abandoned wherever they land. Agatha is down to her lingerie when she finds your hard cock. Her hand closes around it and her confident expression cracks into a pleased, almost disbelieving smile.</p>
<<speech "Agatha" "Oh god, this is HUGE. William did not mention you were carrying that around." "agatha">>
<p>She strokes you slowly, testing the weight of you in her palm, then drops to her knees.</p>
<<video "img/agatha/ella_foursome/foursome_3.mp4">>
<p>Ella kneels beside her a moment later, her red hair falling over one shoulder as she frees William's dick. You stand next to your old friend, while the women trade quiet laughs and take turns with their mouths. Ella glances sideways to check Agatha's technique; Agatha catches her looking and deliberately swallows more of you, earning a breathless laugh from Ella before she answers by taking William deeper.</p>
<<speech "William" "Hell of a reunion, brother." "william">>
<<video "img/agatha/ella_foursome/foursome_4.mp4">>
<p>The four of you finally make it onto the bed. You lie beside William, both of you watching as the girls climb on top still with the wrong partners. Agatha rides you with both hands on your chest, her plump ass bouncing over your lap. Ella rides William just as eagerly, shaking her own hips as she looks across at Agatha. Somewhere between moans, Ella reaches over, cups Agatha's cheek, and kisses her. Agatha kisses her back without hesitating.</p>
<<video "img/agatha/ella_foursome/foursome_5.mp4">>
<p>That kiss changes the mood. You trade the women back, pulling Ella beneath you while William settles between Agatha's thighs. The wide bed leaves the girls side by side, close enough for Ella to keep stealing kisses from Agatha as you fuck her in missionary. At first Agatha only smiles into them. Then she starts meeting Ella's mouth with a hunger that has nothing to do with the champagne.</p>
<<video "img/agatha/ella_foursome/foursome_6.mp4">>
<p>William rolls Ella over and takes her from behind, his thick cock driving her forward into the mattress. You give Agatha the same treatment. She throws her ass back against you, twerking her hips and trying to fuck herself on your dick with every sharp little bounce. You catch both her wrists, pull her arms behind her back, and take over. Each deep thrust makes her cry out while Ella watches through the loose curtain of her hair.</p>
<<video "img/agatha/ella_foursome/foursome_7.mp4">>
<p>When Agatha is shaking too hard to hold herself up, you guide Ella down over her face. Agatha opens for her eagerly, tongue working Ella while you return her to William. He fucks Agatha on her back, and you hold Ella's hips as she moans into the room. When Ella turns toward you, you press your slick cock to her lips. She tastes Agatha's juices on you, licking your dick clean.</p>
<<video "img/agatha/ella_foursome/foursome_8.mp4">>
<p>You are the first one close. Ella and Agatha lie together on the bed, flushed and grinning, their mouths still finding each other between breaths. You jerk yourself over them until hot ropes spill across their cheeks, lips, and chins. Instead of wiping it away, Ella drags Agatha into a sloppy kiss. They smear your cum between their mouths and laugh when it strings across their lips.</p>
<<video "img/agatha/ella_foursome/foursome_9.mp4">>
<p>William is not far behind. He pulls Agatha under him, asks her once if she is ready, and then buries himself deep. Her answer is a cry and both arms around his neck as he fills her with a hard, deliberate creampie. Beside them, Ella is back to sloppy kisses.</p>
<p>Near dawn, William stares at the ceiling with Ella asleep on his chest and Agatha's hand tangled with yours.</p>
<<speech "William" "What a wonderful escape." "william">>
<p>You check out at dawn past a desk clerk trained not to react to anything. Ella curls against you in the ride back through the blockpost. The guard checks your passes and sees only two tired people returning from the city - must be a night shift.</p>
<<set $william_stage = 6>>
<<statchange "energy" -4>>
<<statchange "respect" 2>>
[[Home|The Hood]]